Sha256: 94395dfa599a9ca09cab68ca34bc1ec1375a729e2122e13213b238dbdef0ffa5
Contents?: true
Size: 1.33 KB
Versions: 11
Compression:
Stored size: 1.33 KB
Contents
require 'effective_bootstrap' require 'effective_resources' require 'effective_datatables/engine' require 'effective_datatables/version' module EffectiveDatatables mattr_accessor :authorization_method mattr_accessor :default_length mattr_accessor :html_class mattr_accessor :save_state mattr_accessor :max_cookie_size mattr_accessor :debug def self.setup yield self end def self.authorized?(controller, action, resource) @_exceptions ||= [Effective::AccessDenied, (CanCan::AccessDenied if defined?(CanCan)), (Pundit::NotAuthorizedError if defined?(Pundit))].compact return !!authorization_method unless authorization_method.respond_to?(:call) controller = controller.controller if controller.respond_to?(:controller) # Do the right thing with a view begin !!(controller || self).instance_exec((controller || self), action, resource, &authorization_method) rescue *@_exceptions false end end def self.authorize!(controller, action, resource) raise Effective::AccessDenied.new('Access Denied', action, resource) unless authorized?(controller, action, resource) end def self.find(id) id = id.to_s.gsub(/-\d+\z/, '').gsub('-', '/') klass = (id.classify.safe_constantize || id.classify.pluralize.safe_constantize) klass.try(:new) || raise('unable to find datatable') end end
Version data entries
11 entries across 11 versions & 1 rubygems