module Adminterface::Extensions::BaseController

Public Instance Methods

default_url_options() click to toggle source
Calls superclass method
# File lib/adminterface/extensions/base_controller.rb, line 4
def default_url_options
  super.merge(tab: params[:tab], anchor: params[:anchor_id])
end

Private Instance Methods

action_name_pairing(name) click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 17
def action_name_pairing(name)
  case name
  when "create" then "new"
  when "update" then "edit"
  else name
  end
end
reset_tab() click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 25
def reset_tab
  params.delete(:tab)
  params.delete(:anchor_id)
end
resource_scope() click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 45
def resource_scope
  session.fetch(:resource_scope, {}).with_indifferent_access
end
same_action?() click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 40
def same_action?
  resource_scope[:action].presence &&
    action_name_pairing(action_name).eql?(resource_scope[:action])
end
same_controller?() click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 34
def same_controller?
  return true if resource_scope[:controller].blank?

  resource_scope[:controller] == controller_path
end
set_resource_scope() click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 10
def set_resource_scope
  session[:resource_scope] = {
    controller: controller_path,
    action: action_name_pairing(action_name)
  }
end
should_reset_tab?() click to toggle source
# File lib/adminterface/extensions/base_controller.rb, line 30
def should_reset_tab?
  !(same_controller? && same_action?)
end