Class: AccessForge::Policy
- Inherits:
-
Object
- Object
- AccessForge::Policy
- Defined in:
- lib/access_forge/policy.rb
Instance Method Summary collapse
- #authorized?(rules, options = {}) ⇒ Boolean
- #can_read? ⇒ Boolean
- #can_write? ⇒ Boolean
- #create? ⇒ Boolean
- #delete? ⇒ Boolean
- #destroy? ⇒ Boolean
- #edit? ⇒ Boolean
- #index? ⇒ Boolean
-
#initialize(user, controller) ⇒ Policy
constructor
A new instance of Policy.
- #new? ⇒ Boolean
- #show? ⇒ Boolean
- #update? ⇒ Boolean
Constructor Details
#initialize(user, controller) ⇒ Policy
Returns a new instance of Policy.
5 6 7 8 9 10 |
# File 'lib/access_forge/policy.rb', line 5 def initialize(user, controller) @user = user @controller = controller @params = @controller.request.params @headers = @controller.request.headers end |
Instance Method Details
#authorized?(rules, options = {}) ⇒ Boolean
12 13 14 15 16 17 |
# File 'lib/access_forge/policy.rb', line 12 def (rules, = {}) rules.each do |rule| return true if rule.(@user, @controller, ) end false end |
#can_read? ⇒ Boolean
51 52 53 |
# File 'lib/access_forge/policy.rb', line 51 def can_read? ([PolicyRules::ClosedPolicyRule]) end |
#can_write? ⇒ Boolean
55 56 57 |
# File 'lib/access_forge/policy.rb', line 55 def can_write? ([PolicyRules::ClosedPolicyRule]) end |
#create? ⇒ Boolean
31 32 33 |
# File 'lib/access_forge/policy.rb', line 31 def create? can_write? end |
#delete? ⇒ Boolean
43 44 45 |
# File 'lib/access_forge/policy.rb', line 43 def delete? destroy? end |
#destroy? ⇒ Boolean
47 48 49 |
# File 'lib/access_forge/policy.rb', line 47 def destroy? can_write? end |
#edit? ⇒ Boolean
35 36 37 |
# File 'lib/access_forge/policy.rb', line 35 def edit? update? end |
#index? ⇒ Boolean
19 20 21 |
# File 'lib/access_forge/policy.rb', line 19 def index? can_read? end |
#new? ⇒ Boolean
27 28 29 |
# File 'lib/access_forge/policy.rb', line 27 def new? create? end |
#show? ⇒ Boolean
23 24 25 |
# File 'lib/access_forge/policy.rb', line 23 def show? can_read? end |
#update? ⇒ Boolean
39 40 41 |
# File 'lib/access_forge/policy.rb', line 39 def update? can_write? end |