module MorseControllerHelpers
Constants
- VERSION
Public Instance Methods
assign_current_instance_from_params(pri)
click to toggle source
# File lib/morse_controller_helpers.rb, line 21 def assign_current_instance_from_params(pri) return if dynamic_current_instance_exceptions.include? pri klass_us = pri.gsub('_id', '') klass = klass_us.classify.constantize if klass.respond_to?(:friendly) instance_variable_set "@#{klass_us}", klass.friendly.find(params[pri]) else instance_variable_set "@#{klass_us}", klass.find(params[pri]) end @current_instance = set_current_instance(klass_us) end
current_instances()
click to toggle source
# File lib/morse_controller_helpers.rb, line 33 def current_instances @current_instances = klass.all end
dynamic_current_instance()
click to toggle source
# File lib/morse_controller_helpers.rb, line 37 def dynamic_current_instance params_resource_ids.each do |pri| begin if try(:dynamic_current_instance_exceptions) next if dynamic_current_instance_exceptions.include? pri end assign_current_instance_from_params(pri) rescue ActiveRecord::RecordNotFound render_404 end end end
klass(str = klass_camel)
click to toggle source
# File lib/morse_controller_helpers.rb, line 50 def klass(str = klass_camel) str.classify.constantize end
klass_camel()
click to toggle source
# File lib/morse_controller_helpers.rb, line 54 def klass_camel controller_name.singularize end
klass_humanized()
click to toggle source
# File lib/morse_controller_helpers.rb, line 58 def klass_humanized klass_camel.humanize end
klass_id()
click to toggle source
# File lib/morse_controller_helpers.rb, line 62 def klass_id "#{klass_snake}_id" end
klass_pluralized()
click to toggle source
# File lib/morse_controller_helpers.rb, line 66 def klass_pluralized klass_snake.pluralize end
klass_snake(str = klass_camel)
click to toggle source
# File lib/morse_controller_helpers.rb, line 70 def klass_snake(str = klass_camel) str.underscore end
params_resource()
click to toggle source
# File lib/morse_controller_helpers.rb, line 82 def params_resource params.require(resource_symbol).permit! end
params_resource_ids()
click to toggle source
# File lib/morse_controller_helpers.rb, line 74 def params_resource_ids params.keys.collect { |p| p if p.include?('_id') }.compact end
params_resources()
click to toggle source
# File lib/morse_controller_helpers.rb, line 78 def params_resources params_resource_ids.map { |p| p.gsub('_id', '') } end
path_edit(cp = current_instance)
click to toggle source
# File lib/morse_controller_helpers.rb, line 86 def path_edit(cp = current_instance) [:edit, path_prefix, cp].compact end
path_index()
click to toggle source
# File lib/morse_controller_helpers.rb, line 90 def path_index [path_prefix, resource_symbols].compact end
path_new()
click to toggle source
# File lib/morse_controller_helpers.rb, line 94 def path_new [:new, path_prefix, resource_symbol].compact end
path_prefix()
click to toggle source
# File lib/morse_controller_helpers.rb, line 98 def path_prefix nil end
path_prefix_symbol()
click to toggle source
# File lib/morse_controller_helpers.rb, line 102 def path_prefix_symbol return nil unless path_prefix path_prefix.to_sym end
path_show(instance = current_instance)
click to toggle source
# File lib/morse_controller_helpers.rb, line 107 def path_show(instance = current_instance) [path_prefix, instance].compact end
render_404()
click to toggle source
# File lib/morse_controller_helpers.rb, line 119 def render_404 flash_404_error respond_to do |format| format.html do render file: "#{Rails.root}/public/404", layout: false, status: :not_found end format.xml { head :not_found } format.any { head :not_found } end end
resource_symbol()
click to toggle source
# File lib/morse_controller_helpers.rb, line 111 def resource_symbol klass_snake.to_sym end
resource_symbols()
click to toggle source
# File lib/morse_controller_helpers.rb, line 115 def resource_symbols klass_pluralized end
set_current_instance(k)
click to toggle source
# File lib/morse_controller_helpers.rb, line 132 def set_current_instance(k) instance_variable_get("@#{k}") unless action_name == 'index' end