voltex 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/controllers/voltex/application_controller.rb +1 -1
- data/app/controllers/voltex/roles_controller.rb +1 -1
- data/app/helpers/voltex/application_helper.rb +5 -0
- data/app/views/voltex/roles/edit.html.erb +1 -1
- data/lib/voltex.rb +2 -0
- data/lib/voltex/cancan/ability.rb +1 -1
- data/lib/voltex/engine.rb +4 -0
- data/lib/voltex/pundit.rb +4 -3
- data/lib/voltex/scope.rb +20 -0
- data/lib/voltex/setup.rb +9 -0
- data/lib/voltex/version.rb +1 -1
- metadata +19 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 84b8ef19ab32541c4393db0c5f56f7245e62259e
|
4
|
+
data.tar.gz: e2333a8d0af162e5cdcd33be804caf41c288f4a5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 98a53283c64e91020ee3d9d260ffb68d74c2f25430d9770fbd50a07c9334ae23aae0dccb01529a9a37492869662887d70678469d770f861d7a9abf3e5cfeaa26
|
7
|
+
data.tar.gz: 99cde4d36097501a2ca2f329b7fdfd7b126a717faf0932cfca6ea58bc8620c898fe4724d101fc1c24fe203861cd04ea010421af55db6541c81c53a6affa3bf37
|
@@ -11,7 +11,7 @@ module Voltex
|
|
11
11
|
# PUT /voltex/roles/1
|
12
12
|
def update
|
13
13
|
if @resource.update(resource_params)
|
14
|
-
redirect_to @resource, notice: t('.notice', default: update_message)
|
14
|
+
redirect_to [main_app, @resource], notice: t('.notice', default: update_message)
|
15
15
|
else
|
16
16
|
render :edit
|
17
17
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<h2>Defining Role Permissions</h2>
|
2
2
|
|
3
|
-
<%= form_for @resource, as: Voltex.role_name, url: role_path(@resource) do |f| %>
|
3
|
+
<%= form_for @resource, as: Voltex.role_name, url: voltex.role_path(@resource) do |f| %>
|
4
4
|
<% Voltex.permission_model.select(:resource).group(:resource).each do |permission| %>
|
5
5
|
<h5><%= permission.resource.pluralize %></h5>
|
6
6
|
<%= f.collection_check_boxes("#{Voltex.permission_name}_ids",
|
data/lib/voltex.rb
CHANGED
data/lib/voltex/engine.rb
CHANGED
data/lib/voltex/pundit.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
module Voltex
|
2
2
|
module Pundit
|
3
3
|
def permission?(resource, action)
|
4
|
-
|
5
|
-
resource
|
6
|
-
|
4
|
+
!!Voltex.current_permissions.detect do |permission|
|
5
|
+
permission.resource == resource.to_s &&
|
6
|
+
permission.action == action.to_s
|
7
|
+
end
|
7
8
|
end
|
8
9
|
end
|
9
10
|
end
|
data/lib/voltex/scope.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
module Voltex
|
2
|
+
module Scope
|
3
|
+
extend ActiveSupport::Concern
|
4
|
+
|
5
|
+
included do
|
6
|
+
before_action :set_current_permissions
|
7
|
+
end
|
8
|
+
|
9
|
+
protected
|
10
|
+
|
11
|
+
def set_current_permissions
|
12
|
+
return unless defined?(current_user)
|
13
|
+
Voltex.current_permissions = current_permissions
|
14
|
+
end
|
15
|
+
|
16
|
+
def current_permissions
|
17
|
+
current_user.send(Voltex.permissions_name).to_a
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/voltex/setup.rb
CHANGED
@@ -18,6 +18,15 @@ module Voltex
|
|
18
18
|
mattr_accessor :include
|
19
19
|
@@include = []
|
20
20
|
|
21
|
+
|
22
|
+
def current_permissions=(permissions)
|
23
|
+
RequestStore.store[:current_permissions] = permissions
|
24
|
+
end
|
25
|
+
|
26
|
+
def current_permissions
|
27
|
+
RequestStore.store[:current_permissions] || []
|
28
|
+
end
|
29
|
+
|
21
30
|
def permissions_role_class
|
22
31
|
[permission_class, role_class].map(&:pluralize).sort.join.singularize
|
23
32
|
end
|
data/lib/voltex/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: voltex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Erick Fabian
|
@@ -9,22 +9,36 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-06-
|
12
|
+
date: 2015-06-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - ">="
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '0'
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ">="
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '0'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: request_store
|
16
30
|
requirement: !ruby/object:Gem::Requirement
|
17
31
|
requirements:
|
18
32
|
- - "~>"
|
19
33
|
- !ruby/object:Gem::Version
|
20
|
-
version:
|
34
|
+
version: 1.1.0
|
21
35
|
type: :runtime
|
22
36
|
prerelease: false
|
23
37
|
version_requirements: !ruby/object:Gem::Requirement
|
24
38
|
requirements:
|
25
39
|
- - "~>"
|
26
40
|
- !ruby/object:Gem::Version
|
27
|
-
version:
|
41
|
+
version: 1.1.0
|
28
42
|
- !ruby/object:Gem::Dependency
|
29
43
|
name: sqlite3
|
30
44
|
requirement: !ruby/object:Gem::Requirement
|
@@ -131,6 +145,7 @@ files:
|
|
131
145
|
- lib/voltex/cancan/ability.rb
|
132
146
|
- lib/voltex/engine.rb
|
133
147
|
- lib/voltex/pundit.rb
|
148
|
+
- lib/voltex/scope.rb
|
134
149
|
- lib/voltex/setup.rb
|
135
150
|
- lib/voltex/version.rb
|
136
151
|
homepage: ''
|