effective_roles 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aa6baafe8b9e81b1baa9862c885beb88c8483735
4
- data.tar.gz: b4beee32f21b88b94046c6a467b681f0c1142ce7
3
+ metadata.gz: da758236959516cce1c03e8d05443762533eae37
4
+ data.tar.gz: 42af4b3d409c4ec2ae9a84bb4df524615dc4a789
5
5
  SHA512:
6
- metadata.gz: ebb6efc26b4c837b5c8ed50dbb3c277c146092c439f374ad42740cfbb3a8803650479e19dcd9e5a0b09eed19c5e2e2f7327383f69a1bf24e726c7b93e35b8355
7
- data.tar.gz: bf6748ec5daa3e3560a8c3352bde647a12ebc4d3565ac6bd17c4071641ce22ed17855588ccc70566574be6fcbde93edfe3b37be5fd73c38104df48ca053d19f7
6
+ metadata.gz: db676b60bacc72079df9ab89d54cd39c1110cca590be9d20305870771ca1ce302c720130df7afbc4a1558dbc1c8699fa8d3d7ead76c7d5a330bdde007ae931d1
7
+ data.tar.gz: 3f94ff86d2ebdbb0a27f81d63d6e7ce467eb1a717a3b07a12951215e7e83666a106471323a7a4f29964b9c302cedb930350aeaffa82895d386c28f51f679c674
data/README.md CHANGED
@@ -119,6 +119,7 @@ user.roles = [:admin]
119
119
 
120
120
  post.roles_permit?(user)
121
121
  => false # User does not have the superadmin role
122
+ ```
122
123
 
123
124
  ```ruby
124
125
  post.roles = [:admin]
@@ -17,6 +17,8 @@ module EffectiveRoles
17
17
  obj.roles
18
18
  elsif obj.kind_of?(Integer)
19
19
  roles.reject { |r| (obj & 2**roles.index(r)).zero? }
20
+ elsif obj.kind_of?(Symbol)
21
+ [roles.find { |role| role == obj }].compact
20
22
  elsif obj.nil?
21
23
  []
22
24
  else
@@ -34,8 +36,6 @@ module EffectiveRoles
34
36
  end
35
37
  end
36
38
 
37
- private
38
-
39
39
  def self.assignable_roles_for(user, obj = nil)
40
40
  raise 'EffectiveRoles config.assignable_roles_for must be a Hash, Array or nil' unless [Hash, Array, NilClass].include?(assignable_roles.class)
41
41
 
@@ -48,6 +48,8 @@ module EffectiveRoles
48
48
  user.roles.map { |role| assignable[role] }.flatten.compact.uniq
49
49
  end
50
50
 
51
+ private
52
+
51
53
  def self.role_description(role, obj = nil)
52
54
  raise 'EffectiveRoles config.role_descriptions must be a Hash' unless role_descriptions.kind_of?(Hash)
53
55
  (role_descriptions[obj.try(:class).to_s] || {})[role] || role_descriptions[role] || ''
@@ -1,3 +1,3 @@
1
1
  module EffectiveRoles
2
- VERSION = '1.2.0'.freeze
2
+ VERSION = '1.2.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_roles
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-24 00:00:00.000000000 Z
11
+ date: 2015-03-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails