Sha256: 87aecfd5b4c3f8113047b1a091931db4f5e1a021982b458bf6e298ac96b0fed8
Contents?: true
Size: 1.04 KB
Versions: 1
Compression:
Stored size: 1.04 KB
Contents
require 'adeia/controller_resource' module Adeia module ControllerMethods module ClassMethods def load_and_authorize(**args) ControllerResource.add_before_filter(self, :load_resoure_or_records_and_authorize, **args) end end def self.included(base) base.extend ClassMethods base.helper_method :can? end def load_and_authorize!(**args) controller_resource = ControllerResource.new(self, **args) resource = controller_resource.load_resource controller_resource.authorize! return resource end def authorize_and_load_records!(**args) controller_resource = ControllerResource.new(self, **args) controller_resource.authorize! return controller_resource.load_records end def authorize!(**args) ControllerResource.new(self, **args).authorize! end def can?(action, controller=nil, resource=nil) args = { action: action, controller: controller, resource: resource } ControllerResource.new(self, **args).can? end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
adeia-0.1.0 | lib/adeia/controller_methods.rb |