Sha256: a791741d6d84adcff9c4b4b40e08ddf99728a523f481eb90398c2f643798182e
Contents?: true
Size: 1.11 KB
Versions: 3
Compression:
Stored size: 1.11 KB
Contents
class BMC::FiltersController < BMC::ApplicationController skip_before_action :verify_authenticity_token, raise: false skip_before_action :authenticate_user!, raise: false skip_after_action :verify_authorized, raise: false skip_after_action :verify_policy_scoped, raise: false def self.parse(json) JSON.parse(json.to_s).with_indifferent_access rescue JSON::ParserError {}.with_indifferent_access end def create filters = self.class.parse(cookies[:filters]) filters.merge! params.fetch(:filters, {}).permit!.to_h cookies[:filters] = { :value => JSON.dump(filters), :expires => 1.year.from_now, :path => "/", } redirect_to back_url end private def back_url url = [ params[:form_url], request.referer, main_app.try(:root_path), "/", ].find(&:present?) # Delete page param base, query_string = url.split("?") query_string = query_string.to_s.split("&").delete_if { |p| p.include?("page=") }.join("&") query_string = "?#{query_string}" if query_string.present? base + query_string end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
bmc-1.6.2 | app/controllers/bmc/filters_controller.rb |
bmc-1.6.1 | app/controllers/bmc/filters_controller.rb |
bmc-1.6.0 | app/controllers/bmc/filters_controller.rb |