Class: AssertedEnvironmentsController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- AssertedEnvironmentsController
- Includes:
- DataControllerConfiguration::BatchByFilterScope, DataControllerConfiguration::ProjectDataControllerConfiguration
- Defined in:
- app/controllers/asserted_environments_controller.rb
Constant Summary
Constants included from ProjectsHelper
ProjectsHelper::CLASSIFIER, ProjectsHelper::CLASSIFIER_ANNOTATION
Instance Method Summary collapse
- #asserted_environment_params ⇒ Object private
-
#autocomplete ⇒ Object
GET /asserted_environments/autocomplete.json.
-
#autoselect ⇒ Object
GET /asserted_environments/autoselect.
- #autoselect_params ⇒ Object private
- #batch_by_filter_scope_params ⇒ Object private
-
#create ⇒ Object
POST /asserted_environments.json.
-
#destroy ⇒ Object
DELETE /asserted_environments/1.json.
-
#download ⇒ Object
GET /asserted_environments/download.
-
#edit ⇒ Object
GET /asserted_environments/1/edit.
-
#index ⇒ Object
GET /asserted_environments or /asserted_environments.json.
-
#list ⇒ Object
GET /asserted_environments/list.
-
#new ⇒ Object
GET /asserted_environments/new.
-
#object_types ⇒ Object
GET /asserted_environments/object_types.
-
#search ⇒ Object
GET /asserted_environments/search Target of the quick search form (see _quick_search_form.html.erb).
- #set_asserted_environment ⇒ Object private
-
#show ⇒ Object
GET /asserted_environments/1 or /asserted_environments/1.json.
Methods included from DataControllerConfiguration::ProjectDataControllerConfiguration
Methods inherited from ApplicationController
Methods included from RedirectHelper
Methods included from RequestType
Methods included from LogRecent
Methods included from Cookies
#digest_cookie, #digested_cookie_exists?
Methods included from Whitelist
Methods included from ProjectsHelper
#cumulative_gb_per_year, #cumulative_projects_created_per_year, #document_cumulative_gb_per_year, #document_gb_per_year, #gb_per_year, #image_cumulative_gb_per_year, #image_gb_per_year, #invalid_object, #project_classification, #project_initials, #project_link, #project_login_link, #project_matches, #project_tag, #projects_list, #projects_search_form, #sound_cumulative_gb_per_year, #sound_gb_per_year, #taxonworks_classification, #week_in_review_graphs
Methods included from Api::Intercept
Methods included from TokenAuthentication
#intercept_project, #intercept_user, #intercept_user_or_project, #project_token_authenticate, #token_authenticate
Instance Method Details
#asserted_environment_params ⇒ Object (private)
123 124 125 126 127 128 129 |
# File 'app/controllers/asserted_environments_controller.rb', line 123 def asserted_environment_params params.require(:asserted_environment).permit( :asserted_environment_object_id, :asserted_environment_object_type, :uri, :uri_label, :position, citations_attributes: [:is_original, :source_id, :pages] ) end |
#autocomplete ⇒ Object
GET /asserted_environments/autocomplete.json
92 93 94 95 96 97 |
# File 'app/controllers/asserted_environments_controller.rb', line 92 def autocomplete @asserted_environments = ::Queries::AssertedEnvironment::Autocomplete.new( params.require(:term), project_id: sessions_current_project_id ).autocomplete end |
#autoselect ⇒ Object
GET /asserted_environments/autoselect
100 101 102 103 104 105 106 107 108 |
# File 'app/controllers/asserted_environments_controller.rb', line 100 def autoselect render json: ::Autoselect::AssertedEnvironment::Autoselect.new( term: params[:term], level: params[:level], project_id: sessions_current_project_id, user_id: sessions_current_user_id, **autoselect_params ).response end |
#autoselect_params ⇒ Object (private)
138 139 140 |
# File 'app/controllers/asserted_environments_controller.rb', line 138 def autoselect_params params.permit(:show_info).to_h.symbolize_keys end |
#batch_by_filter_scope_params ⇒ Object (private)
131 132 133 134 135 136 |
# File 'app/controllers/asserted_environments_controller.rb', line 131 def batch_by_filter_scope_params params.require(:params).permit( :uri, :uri_label, citation: [:source_id, :pages, :is_original] ) end |
#create ⇒ Object
POST /asserted_environments.json
61 62 63 64 65 66 67 68 69 |
# File 'app/controllers/asserted_environments_controller.rb', line 61 def create @asserted_environment = AssertedEnvironment.new(asserted_environment_params) if @asserted_environment.save render :show, status: :created, location: @asserted_environment else render json: @asserted_environment.errors, status: :unprocessable_content end end |
#destroy ⇒ Object
DELETE /asserted_environments/1.json
72 73 74 75 76 77 78 |
# File 'app/controllers/asserted_environments_controller.rb', line 72 def destroy if @asserted_environment.destroy head :no_content else render json: @asserted_environment.errors, status: :unprocessable_content end end |
#download ⇒ Object
GET /asserted_environments/download
43 44 45 46 47 48 49 50 |
# File 'app/controllers/asserted_environments_controller.rb', line 43 def download send_data( Export::CSV.generate_csv( AssertedEnvironment.where(project_id: sessions_current_project_id) ), type: 'text', filename: "asserted_environments_#{DateTime.now}.tsv") end |
#edit ⇒ Object
GET /asserted_environments/1/edit
57 58 |
# File 'app/controllers/asserted_environments_controller.rb', line 57 def edit end |
#index ⇒ Object
GET /asserted_environments or /asserted_environments.json
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'app/controllers/asserted_environments_controller.rb', line 11 def index respond_to do |format| format.html { @recent_objects = AssertedEnvironment .where(project_id: sessions_current_project_id) .order(updated_at: :desc).limit(10) render '/shared/data/all/index' } format.json { @asserted_environments = ::Queries::AssertedEnvironment::Filter.new(params).all .where(project_id: sessions_current_project_id) .includes(:asserted_environment_object) .order(:cached, :id) .page(params[:page]).per(params[:per] || 500) } end end |
#list ⇒ Object
GET /asserted_environments/list
35 36 37 38 39 40 |
# File 'app/controllers/asserted_environments_controller.rb', line 35 def list @asserted_environments = AssertedEnvironment .where(project_id: sessions_current_project_id) .order(:id) .page(params[:page]) end |
#new ⇒ Object
GET /asserted_environments/new
53 54 |
# File 'app/controllers/asserted_environments_controller.rb', line 53 def new end |
#object_types ⇒ Object
GET /asserted_environments/object_types
111 112 113 |
# File 'app/controllers/asserted_environments_controller.rb', line 111 def object_types render json: ENVIRONMENT_ASSERTABLE_TYPES.sort end |
#search ⇒ Object
GET /asserted_environments/search Target of the quick search form (see _quick_search_form.html.erb).
82 83 84 85 86 87 88 89 |
# File 'app/controllers/asserted_environments_controller.rb', line 82 def search if params[:id].blank? redirect_to asserted_environments_path, alert: 'You must select an item from the list with a click or tab press before clicking show.' else redirect_to asserted_environment_path(params[:id]) end end |
#set_asserted_environment ⇒ Object (private)
117 118 119 120 121 |
# File 'app/controllers/asserted_environments_controller.rb', line 117 def set_asserted_environment @asserted_environment = AssertedEnvironment .where(project_id: sessions_current_project_id) .find(params[:id]) end |
#show ⇒ Object
GET /asserted_environments/1 or /asserted_environments/1.json
31 32 |
# File 'app/controllers/asserted_environments_controller.rb', line 31 def show end |