mdarby-restful_acl 2.0.3 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/lib/restful_acl_helper.rb +18 -9
  2. metadata +2 -2
@@ -1,16 +1,12 @@
1
1
  module RestfulAclHelper
2
2
  def indexable
3
3
  return true if admin_enabled
4
-
5
- parent = klass.mom rescue nil
6
- klass.is_indexable_by(current_user, parent)
4
+ klass.is_indexable_by(current_user, parent_obj)
7
5
  end
8
6
 
9
7
  def creatable
10
8
  return true if admin_enabled
11
-
12
- parent = klass.mom rescue nil
13
- klass.is_creatable_by(current_user, parent)
9
+ klass.is_creatable_by(current_user, parent_obj)
14
10
  end
15
11
  alias_method :createable, :creatable
16
12
 
@@ -43,11 +39,24 @@ module RestfulAclHelper
43
39
 
44
40
  private
45
41
 
42
+ def klass
43
+ params[:controller].classify.constantize
44
+ end
45
+
46
+ def parent_obj
47
+ parent_klass.find(parent_id)
48
+ end
49
+
50
+ def parent_klass
51
+ klass.mom.to_s.classify.constantize
52
+ end
53
+
54
+ def parent_id
55
+ params["#{klass.mom.to_s}_id"]
56
+ end
57
+
46
58
  def admin_enabled
47
59
  current_user.respond_to?("is_admin?") && current_user.is_admin?
48
60
  end
49
61
 
50
- def klass
51
- params[:controller].classify.constantize
52
- end
53
62
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mdarby-restful_acl
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Darby
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-01-15 00:00:00 -08:00
12
+ date: 2009-02-07 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies: []
15
15