active_admin_role 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +0 -1
- data/lib/active_admin_role/active_admin/dsl.rb +1 -1
- data/lib/active_admin_role/active_admin/resource_controller.rb +8 -0
- data/lib/active_admin_role/config.rb +2 -1
- data/lib/active_admin_role/manageable_resource.rb +2 -1
- data/lib/active_admin_role/version.rb +1 -1
- data/lib/generators/active_admin_role/templates/initializer.rb +4 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 50b0ce4d721281f6862803084c1bc877d0e16194
|
4
|
+
data.tar.gz: 3a68d53325063176c30fe76ac76eec1e33dc81e5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b95f322b9997282163ab7ea8e5ae97ceec3337317c6b862624c9477e563c8c346e3c135a7cba49d88edc4f5a2426a0e25a19169a64c86b0cd92604f650c5c9db
|
7
|
+
data.tar.gz: 16a35e6b5be3ee64c92bbc9ea8c95d0e6bb2c9ed1e6bbf3e24071b639b99cef6e52856703d176bfaba853f8b3197a4ace434d307541265656f28f7dbe069bb9b
|
data/Gemfile
CHANGED
@@ -8,7 +8,7 @@ module ActiveAdminRole
|
|
8
8
|
|
9
9
|
controller.resource_class.roles.each_key do |role|
|
10
10
|
batch_action "assign as #{role}" do |ids|
|
11
|
-
formatted_ids = ids - [
|
11
|
+
formatted_ids = ids - [active_admin_role_current_user.try!(:id).to_s]
|
12
12
|
resource_class.where(id: formatted_ids).update_all(role: resource_class.roles[role])
|
13
13
|
|
14
14
|
if Rails::VERSION::MAJOR >= 5
|
@@ -16,6 +16,14 @@ module ActiveAdminRole
|
|
16
16
|
def authorize_access_resource!
|
17
17
|
authorize_resource!(active_admin_config.resource_class)
|
18
18
|
end
|
19
|
+
|
20
|
+
def active_admin_role_current_user
|
21
|
+
send(active_admin_role_current_user_method_name)
|
22
|
+
end
|
23
|
+
|
24
|
+
def active_admin_role_current_user_method_name
|
25
|
+
ActiveAdminRole.config.current_user_method_name
|
26
|
+
end
|
19
27
|
end
|
20
28
|
end
|
21
29
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module ActiveAdminRole
|
2
2
|
class Config
|
3
|
-
attr_accessor :roles, :super_user_roles, :guest_user_roles, :user_class_name, :default_state
|
3
|
+
attr_accessor :roles, :super_user_roles, :guest_user_roles, :user_class_name, :default_state, :current_user_method_name
|
4
4
|
|
5
5
|
def initialize
|
6
6
|
@roles = { guest: 0, support: 1, staff: 2, manager: 3, admin: 99 }
|
@@ -8,6 +8,7 @@ module ActiveAdminRole
|
|
8
8
|
@super_user_roles = [:admin]
|
9
9
|
@user_class_name = "AdminUser"
|
10
10
|
@default_state = :cannot
|
11
|
+
@current_user_method_name = "current_admin_user"
|
11
12
|
end
|
12
13
|
|
13
14
|
def default_state=(value)
|
@@ -3,7 +3,8 @@ require "set"
|
|
3
3
|
module ActiveAdminRole
|
4
4
|
class ManageableResource
|
5
5
|
def call
|
6
|
-
::ActiveAdmin.application.
|
6
|
+
namespace = ::ActiveAdmin.application.default_namespace
|
7
|
+
::ActiveAdmin.application.namespaces[namespace].resources.inject([]) do |result, resource|
|
7
8
|
class_name = resource.controller.resource_class.to_s
|
8
9
|
name = resource.resource_name.name
|
9
10
|
actions = collect_defined_actions(resource)
|
@@ -12,6 +12,10 @@ ActiveAdminRole.configure do |config|
|
|
12
12
|
# == User class name | default: 'AdminUser'
|
13
13
|
config.user_class_name = "<%= model_class_name %>"
|
14
14
|
|
15
|
+
# [Optional:String]
|
16
|
+
# == method name of #current_user in Controller
|
17
|
+
config.current_user_method_name = "current_<%= model_class_name.underscore.tr('/', '_') %>"
|
18
|
+
|
15
19
|
# [Optional:Symbol]
|
16
20
|
# == Default permission | default: :cannot
|
17
21
|
config.default_state = :cannot
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_admin_role
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yoshiyuki Hirano
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-10-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activeadmin
|
@@ -103,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
103
103
|
version: '0'
|
104
104
|
requirements: []
|
105
105
|
rubyforge_project:
|
106
|
-
rubygems_version: 2.
|
106
|
+
rubygems_version: 2.6.13
|
107
107
|
signing_key:
|
108
108
|
specification_version: 4
|
109
109
|
summary: Role based authorization with CanCanCan for Active Admin
|