diff --git a/app/controllers/alchemy/admin/base_controller.rb b/app/controllers/alchemy/admin/base_controller.rb
index 1113151551..e8f5b2ec29 100644
--- a/app/controllers/alchemy/admin/base_controller.rb
+++ b/app/controllers/alchemy/admin/base_controller.rb
@@ -9,8 +9,7 @@ class BaseController < Alchemy::BaseController
before_action { enforce_ssl if ssl_required? && !request.ssl? }
before_action :load_locked_pages
- helper_method :clipboard_empty?, :trash_empty?, :get_clipboard, :is_admin?,
- :options_from_params
+ helper_method :clipboard_empty?, :trash_empty?, :get_clipboard, :is_admin?
check_authorization
@@ -128,16 +127,7 @@ def do_redirect_to(url_or_path)
end
end
- # Extracts options from params and permits all keys
- #
- # If no options are present it returns an empty parameters hash.
- #
- # @returns [ActionController::Parameters]
- def options_from_params
- @_options_from_params ||= begin
- (params[:options] || ActionController::Parameters.new).permit!
- end
- end
+ deprecate :options_from_params, deprecator: Alchemy::Deprecation
# This method decides if we want to raise an exception or not.
#
diff --git a/app/controllers/alchemy/admin/resources_controller.rb b/app/controllers/alchemy/admin/resources_controller.rb
index 4d886399c8..49a0925ea1 100644
--- a/app/controllers/alchemy/admin/resources_controller.rb
+++ b/app/controllers/alchemy/admin/resources_controller.rb
@@ -143,8 +143,6 @@ def search_filter_params
def common_search_filter_includes
[
- # contrary to Rails' documentation passing an empty hash to permit all keys does not work
- {options: options_from_params.keys},
{q: [
resource_handler.search_field_name,
:s
diff --git a/app/views/alchemy/admin/attachments/_archive_overlay.html.erb b/app/views/alchemy/admin/attachments/_archive_overlay.html.erb
index f8efa8f3d4..990adc4760 100644
--- a/app/views/alchemy/admin/attachments/_archive_overlay.html.erb
+++ b/app/views/alchemy/admin/attachments/_archive_overlay.html.erb
@@ -7,8 +7,7 @@
in_dialog: true,
redirect_url: admin_attachments_path(
element_id: @element.try(:id),
- content_id: @content.try(:id),
- options: options_from_params
+ content_id: @content.try(:id)
) %>
<% end %>
<%= render 'alchemy/admin/partials/remote_search_form' %>
diff --git a/app/views/alchemy/admin/attachments/_file_to_assign.html.erb b/app/views/alchemy/admin/attachments/_file_to_assign.html.erb
index cbda4a2fc8..3b1d3e501f 100644
--- a/app/views/alchemy/admin/attachments/_file_to_assign.html.erb
+++ b/app/views/alchemy/admin/attachments/_file_to_assign.html.erb
@@ -1,8 +1,7 @@
<%= link_to alchemy.assign_admin_essence_files_path(
attachment_id: file_to_assign.id,
- content_id: @content.id,
- options: options_from_params
+ content_id: @content.id
),
remote: true,
method: 'put' do %>
diff --git a/app/views/alchemy/admin/essence_files/assign.js.erb b/app/views/alchemy/admin/essence_files/assign.js.erb
index fb680e5edc..0498ee39e0 100644
--- a/app/views/alchemy/admin/essence_files/assign.js.erb
+++ b/app/views/alchemy/admin/essence_files/assign.js.erb
@@ -1,8 +1,7 @@
$('#<%= @content.dom_id %>').replaceWith('<%= j(
render "alchemy/essences/essence_file_editor",
formats: [:html],
- content: @content,
- options: options_from_params
+ content: @content
) %>');
Alchemy.closeCurrentDialog();
Alchemy.setElementDirty($('#element_<%= @content.element.id %>'));
diff --git a/app/views/alchemy/admin/essence_pictures/assign.js.erb b/app/views/alchemy/admin/essence_pictures/assign.js.erb
index b7634a5056..6ffe1bf4a3 100644
--- a/app/views/alchemy/admin/essence_pictures/assign.js.erb
+++ b/app/views/alchemy/admin/essence_pictures/assign.js.erb
@@ -2,8 +2,7 @@ $('#picture_to_assign_<%= @picture.id %> a').attr('href', '#').off('click');
$('#<%= @content.dom_id -%>').replaceWith('<%= j(
render(
"alchemy/essences/essence_picture_editor",
- content: @content,
- options: options_from_params
+ content: @content
)
) %>');
Alchemy.closeCurrentDialog();
diff --git a/app/views/alchemy/admin/essence_pictures/edit.html.erb b/app/views/alchemy/admin/essence_pictures/edit.html.erb
index 187a89e2d9..c37cde6c5e 100644
--- a/app/views/alchemy/admin/essence_pictures/edit.html.erb
+++ b/app/views/alchemy/admin/essence_pictures/edit.html.erb
@@ -1,20 +1,20 @@
<%= alchemy_form_for @essence_picture,
- url: alchemy.admin_essence_picture_path(@essence_picture, options: options_from_params) do |f| %>
+ url: alchemy.admin_essence_picture_path(@essence_picture) do |f| %>
<%= hidden_field_tag 'content_id', @content.id %>
- <%= f.input :caption, as: options_from_params[:caption_as_textarea] ? 'text' : 'string' %>
+ <%= f.input :caption, as: @content.settings[:caption_as_textarea] ? 'text' : 'string' %>
<%= f.input :title %>
<%= f.input :alt_tag %>
- <%- if options_from_params[:sizes].present? -%>
+ <%- if @content.settings[:sizes].present? -%>
<%= f.input :render_size,
collection: [
- [Alchemy.t('Layout default'), options_from_params[:size]]
- ] + options_from_params[:sizes].to_a,
+ [Alchemy.t('Layout default'), @content.settings[:size]]
+ ] + @content.settings[:sizes].to_a,
include_blank: false,
input_html: {class: 'alchemy_selectbox'} %>
<%- end -%>
- <%- if options_from_params[:css_classes].present? -%>
+ <%- if @content.settings[:css_classes].present? -%>
<%= f.input :css_class,
- collection: options_from_params[:css_classes],
+ collection: @content.settings[:css_classes],
include_blank: Alchemy.t('None'),
input_html: {class: 'alchemy_selectbox'} %>
<%- else -%>
diff --git a/app/views/alchemy/admin/partials/_remote_search_form.html.erb b/app/views/alchemy/admin/partials/_remote_search_form.html.erb
index 2aed629b6c..4df6521bf8 100644
--- a/app/views/alchemy/admin/partials/_remote_search_form.html.erb
+++ b/app/views/alchemy/admin/partials/_remote_search_form.html.erb
@@ -1,6 +1,5 @@
<%= search_form_for @query, url: url_for(
action: 'index',
- options: options_from_params,
size: @size
), remote: true, html: {class: 'search_form', id: nil} do |f| %>
<%= hidden_field_tag("element_id", @element.blank? ? "" : @element.id) %>
@@ -17,7 +16,6 @@
action: 'index',
element_id: @element.blank? ? '' : @element.id,
content_id: @content.blank? ? '' : @content.id,
- options: options_from_params,
size: @size,
overlay: true
),
diff --git a/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb b/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb
index 074bbea84e..68a4bc7900 100644
--- a/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb
+++ b/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb
@@ -9,8 +9,7 @@
size: search_filter_params[:size],
filter: 'last_upload',
content_id: @content.try(:id),
- element_id: @element.try(:id),
- options: options_from_params
+ element_id: @element.try(:id)
) %>
<% end %>
@@ -23,7 +22,6 @@
content_id: @content,
element_id: @element,
q: search_filter_params[:q],
- options: options_from_params,
filter: search_filter_params[:filter],
tagged_with: search_filter_params[:tagged_with]
}),
@@ -40,7 +38,6 @@
content_id: @content,
element_id: @element,
q: search_filter_params[:q],
- options: options_from_params,
filter: search_filter_params[:filter],
tagged_with: search_filter_params[:tagged_with]
}),
@@ -57,7 +54,6 @@
content_id: @content,
element_id: @element,
q: search_filter_params[:q],
- options: options_from_params,
filter: search_filter_params[:filter],
tagged_with: search_filter_params[:tagged_with]
}),
diff --git a/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb b/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb
index 0bb2f487c8..9847e059a4 100644
--- a/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb
+++ b/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb
@@ -5,6 +5,6 @@
<% else %>
<%= render partial: 'picture_to_assign',
collection: @pictures,
- locals: {options: options_from_params, size: @size} %>
+ locals: {size: @size} %>
<%= paginate @pictures, theme: 'alchemy', remote: true, hide_per_page_select: true %>
<% end %>
diff --git a/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb b/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb
index 3d6b7c5146..e929ff2dad 100644
--- a/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb
+++ b/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb
@@ -6,8 +6,7 @@
),
alchemy.assign_admin_essence_pictures_path(
picture_id: picture_to_assign.id,
- content_id: @content,
- options: options
+ content_id: @content
),
remote: true,
onclick: '$(self).attr("href", "#").off("click"); return false',
diff --git a/config/brakeman.ignore b/config/brakeman.ignore
index 3bc13cb74e..52fb12990c 100644
--- a/config/brakeman.ignore
+++ b/config/brakeman.ignore
@@ -29,7 +29,7 @@
"file": "app/views/alchemy/admin/contents/create.js.erb",
"line": 1,
"link": "http://brakemanscanner.org/docs/warning_types/dynamic_render_path/",
- "code": "render(action => \"alchemy/essences/#{Content.create(Element.find(params[:content][:element_id]), content_params).essence_partial_name}_editor\", { :content => Content.create(Element.find(params[:content][:element_id]), content_params), :options => options_from_params, :html_options => ((params[:html_options] or {})) })",
+ "code": "render(action => \"alchemy/essences/#{Content.create(Element.find(params[:content][:element_id]), content_params).essence_partial_name}_editor\", { :content => Content.create(Element.find(params[:content][:element_id]), content_params) })",
"render_path": [{"type":"controller","class":"Alchemy::Admin::ContentsController","method":"create","line":21,"file":"app/controllers/alchemy/admin/contents_controller.rb"}],
"location": {
"type": "template",
diff --git a/spec/controllers/alchemy/admin/base_controller_spec.rb b/spec/controllers/alchemy/admin/base_controller_spec.rb
index d7a820cc9a..861319d2e9 100644
--- a/spec/controllers/alchemy/admin/base_controller_spec.rb
+++ b/spec/controllers/alchemy/admin/base_controller_spec.rb
@@ -3,35 +3,6 @@
require 'rails_helper'
describe Alchemy::Admin::BaseController do
- describe '#options_from_params' do
- subject { controller.send(:options_from_params) }
-
- before do
- expect(controller).to receive(:params).at_least(:once) do
- ActionController::Parameters.new(options: options)
- end
- end
-
- context "params[:options] are Rails parameters" do
- let(:options) do
- ActionController::Parameters.new('hello' => 'world')
- end
-
- it "returns the options as permitted parameters with indifferent access" do
- expect(subject).to be_permitted
- expect(subject[:hello]).to eq('world')
- end
- end
-
- context "params[:options] is nil" do
- let(:options) { nil }
-
- it "returns an empty permitted parameters hash" do
- is_expected.to eq(ActionController::Parameters.new.permit!)
- end
- end
- end
-
describe '#raise_exception?' do
subject { controller.send(:raise_exception?) }