module Governor::Controllers::Helpers

Public Instance Methods

model_class() click to toggle source

Returns the Mapping model class, for example: Article.

# File lib/governor/controllers/helpers.rb, line 25
def model_class
  @model_class ||= mapping.to
end
resource() click to toggle source

Represents the article for this session. Can also be accessed as an instance variable, for example @article if the Mapping class is Article.

# File lib/governor/controllers/helpers.rb, line 7
def resource
  instance_variable_get("@#{mapping.singular}")
end
resource_sym() click to toggle source

Returns a symbol representation of this resource, for example :article if the Mapping class is Article.

# File lib/governor/controllers/helpers.rb, line 13
def resource_sym
  mapping.singular
end
resources() click to toggle source

Returns the list of articles for this session. Can also be accessed as an instance variable, for example @articles if the Mapping class is Article.

# File lib/governor/controllers/helpers.rb, line 20
def resources
  instance_variable_get("@#{mapping.plural}")
end

Private Instance Methods

authorize_governor!() click to toggle source
# File lib/governor/controllers/helpers.rb, line 55
def authorize_governor!
  if defined?(resource)
    redirect_to root_path unless governor_authorized?(action_name, resource)
  else
    instance_eval(&Governor.if_not_allowed) unless governor_authorized?(action_name)
  end
end
governor_authorized?(action, article=nil) click to toggle source
# File lib/governor/controllers/helpers.rb, line 63
def governor_authorized?(action, article=nil)
  instance_exec(action, article, &Governor.authorization_rules)
end
governor_logged_in?() click to toggle source
# File lib/governor/controllers/helpers.rb, line 51
def governor_logged_in?
  the_governor.present?
end
init_resource() click to toggle source
# File lib/governor/controllers/helpers.rb, line 42
def init_resource
  model_scope = the_governor.present? ? model_class.unscoped : model_class
  set_resource model_scope.find(params["#{mapping.singular}_id"] || params[:id])
end
mapping() click to toggle source
# File lib/governor/controllers/helpers.rb, line 38
def mapping
  Governor.resources[params[:governor_mapping]]
end
set_resource(resource) click to toggle source
# File lib/governor/controllers/helpers.rb, line 34
def set_resource(resource)
  instance_variable_set("@#{mapping.singular}", resource)
end
set_resources(resources) click to toggle source
# File lib/governor/controllers/helpers.rb, line 30
def set_resources(resources)
  instance_variable_set("@#{mapping.plural}", resources)
end
the_governor() click to toggle source
# File lib/governor/controllers/helpers.rb, line 47
def the_governor
  instance_eval(&Governor.author)
end