rolypoly 0.0.3 → 0.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.
@@ -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