Class: KeywordsController

Inherits:
ApplicationController show all
Includes:
DataControllerConfiguration::ProjectDataControllerConfiguration
Defined in:
app/controllers/keywords_controller.rb

Instance Method Summary (collapse)

Methods included from DataControllerConfiguration::ProjectDataControllerConfiguration

#annotator_params

Methods included from RequestType

#json_request?

Methods included from LogRecent

#log_user_recent_route

Methods included from Cookies

#digest_cookie, #digested_cookie_exists?

Methods included from Whitelist

#whitelist_constantize

Methods included from ProjectsHelper

#invalid_object, #project_link, #project_matches, #project_tag, #projects_list, #projects_search_form

Methods included from Api::Intercept

#intercept_api

Instance Method Details

- (Object) autocomplete

TODO: deprecate for CVT + params



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'app/controllers/keywords_controller.rb', line 5

def autocomplete
  predicates = Keyword.find_for_autocomplete(params.merge(project_id: sessions_current_project_id)).distinct

  data = predicates.collect do |t|
    str = t.name + ': ' + t.definition
    {id: t.id,
     label: str,
     response_values: {
       params[:method] => t.id},
     label_html: str
    }
  end

  render json: data
end

- (Object) lookup_keyword

TODO: deprecat for CVT + params



22
23
24
25
26
27
28
29
30
31
# File 'app/controllers/keywords_controller.rb', line 22

def lookup_keyword
  @keywords = Keyword.find_for_autocomplete(params.merge(project_id: sessions_current_project_id))
  render(json: @keywords.collect { |t|
    {
        label: t.name,
        object_id: t.id,
        definition: t.definition
    }
  })
end

- (Object) select_options



33
34
35
# File 'app/controllers/keywords_controller.rb', line 33

def select_options
  @keywords = Keyword.select_optimized(sessions_current_user_id, sessions_current_project_id, params.require(:klass))
end