rolypoly 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,7 +3,6 @@ module Rolypoly
3
3
  FailedRoleCheckError = Class.new StandardError
4
4
  module ControllerRoleDSL
5
5
  def self.included(sub)
6
- sub.send :extend, ClassMethods
7
6
  sub.before_filter(:rolypoly_check_role_access!) if sub.respond_to? :before_filter
8
7
  if sub.respond_to? :rescue_from
9
8
  sub.rescue_from(FailedRoleCheckError) do
@@ -18,6 +17,13 @@ module Rolypoly
18
17
  unless sub.method_defined? :current_roles
19
18
  define_method(:current_roles) { [] }
20
19
  end
20
+ sub.send :extend, ClassMethods
21
+ sub.class_eval do # Sometimes get Stack Too Deep errors if in ClassMethods
22
+ define_singleton_method :inherited do |sub|
23
+ super sub
24
+ sub.instance_variable_set(:@rolypoly_gatekeepers, rolypoly_gatekeepers.map(&:clone))
25
+ end
26
+ end
21
27
  end
22
28
 
23
29
  def rolypoly_check_role_access!
@@ -41,11 +47,6 @@ module Rolypoly
41
47
  private :rolypoly_gatekeepers
42
48
 
43
49
  module ClassMethods
44
- def inherited(sub)
45
- super
46
- sub.instance_variable_set(:@rolypoly_gatekeepers, rolypoly_gatekeepers.map(&:clone))
47
- end
48
-
49
50
  def all_public
50
51
  build_gatekeeper(nil, nil).all_public
51
52
  end
@@ -1,3 +1,3 @@
1
1
  module Rolypoly
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rolypoly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-09-24 00:00:00.000000000 Z
12
+ date: 2013-09-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -97,7 +97,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
97
97
  version: '0'
98
98
  segments:
99
99
  - 0
100
- hash: -1537141260289867018
100
+ hash: -4124332530131221613
101
101
  required_rubygems_version: !ruby/object:Gem::Requirement
102
102
  none: false
103
103
  requirements:
@@ -106,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
106
106
  version: '0'
107
107
  segments:
108
108
  - 0
109
- hash: -1537141260289867018
109
+ hash: -4124332530131221613
110
110
  requirements: []
111
111
  rubyforge_project:
112
112
  rubygems_version: 1.8.25