action_permission 1.0.1 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -1
- data/action_permission.gemspec +1 -1
- data/lib/action_permission.rb +2 -1
- data/lib/action_permission/railtie.rb +1 -11
- data/lib/action_permission/version.rb +1 -1
- data/lib/generators/rails/USAGE +6 -9
- data/lib/generators/rails/action_permission_controller_generator.rb +1 -7
- data/tags +66 -0
- metadata +19 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f4a1921690f8780609e6180e16512cce4f7ee1c9
|
4
|
+
data.tar.gz: f899b79c0f1248ca282216473c89d7c4bedbdda0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 351b6f4eb2c6153cd14861acd63a1cf37dbc767a72099ab832ca6555fadbb2b289f46bc3242ff46b5ab64c730c7de4c124f7255e785db802c04c84b18c4f03e2
|
7
|
+
data.tar.gz: 41791422675e26923919b22ceb9a8245f36f21ba41ca7c5768385b5beef84de231ff881986d87acdf429464487ef695eb79f05368c6bcddb91121fe9b860cce8
|
data/README.md
CHANGED
@@ -55,7 +55,8 @@ end
|
|
55
55
|
|
56
56
|
- the `params` method can be used to define attributes allowed to be modified by that user level in addition to their allowed actions, which can be further refined for each level using `except` and `only options`.
|
57
57
|
- the `@membership` attribute is set on initialization of the permission object. See setup for details in 'Setup'
|
58
|
-
|
58
|
+
- passing a `do` block into `#allow` will allow for more control over each roles permission to those actions.
|
59
|
+
- the value passed into the block is the return value of the current controller's `#current_resource` method.
|
59
60
|
|
60
61
|
## Setup
|
61
62
|
|
data/action_permission.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
18
18
|
spec.require_paths = ["lib"]
|
19
19
|
|
20
|
-
spec.add_dependency "rails", "~> 4"
|
20
|
+
spec.add_dependency "rails", "~> 4.0.0"
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.3"
|
22
22
|
spec.add_development_dependency "rake"
|
23
23
|
spec.add_development_dependency "rspec", "~> 2"
|
data/lib/action_permission.rb
CHANGED
@@ -7,15 +7,5 @@ module ActionPermission
|
|
7
7
|
else
|
8
8
|
config.generators.scaffold_controller = :action_permission_controller
|
9
9
|
end
|
10
|
-
|
11
|
-
# initializer 'activeservice.autoload', :before => :set_autoload_paths do |app|
|
12
|
-
# app.config.autoload_paths << (app.config.root + '/app/permissions')
|
13
|
-
# end
|
14
|
-
|
15
|
-
# initializer "strong_parameters.config", :before => "action_controller.set_configs" do |app|
|
16
|
-
# ActionController::Parameters.action_on_unpermitted_parameters = app.config.action_controller.delete(:action_on_unpermitted_parameters) do
|
17
|
-
# (Rails.env.test? || Rails.env.development?) ? :log : false
|
18
|
-
# end
|
19
|
-
# end
|
20
10
|
end
|
21
|
-
end
|
11
|
+
end
|
data/lib/generators/rails/USAGE
CHANGED
@@ -1,16 +1,13 @@
|
|
1
1
|
Description:
|
2
2
|
Stubs out a scaffolded controller and its views. Different from rails
|
3
|
-
scaffold_controller, it uses strong_parameters
|
4
|
-
attributes in a private method.
|
5
|
-
Pass the model name, either CamelCased or under_scored
|
6
|
-
|
7
|
-
|
8
|
-
With ActionPermission, it replaces the default strong_parameters
|
9
|
-
call with a call to allowed_params_for that loads the permission file
|
10
|
-
to determined whitelisted parameters
|
3
|
+
scaffold_controller, it uses strong_parameters via action_permission
|
4
|
+
to whitelist permissible attributes in a private method.
|
5
|
+
Pass the model name, either CamelCased or under_scored, the parameters
|
6
|
+
and optionally the controller instance (otherwise, the controller
|
7
|
+
name is retrieved as a pluralized version of the model name)
|
11
8
|
|
12
9
|
To create a controller within a module, specify the model name as a
|
13
10
|
path like 'parent_module/controller_name'.
|
14
11
|
|
15
12
|
This generates a controller class in app/controllers and invokes helper,
|
16
|
-
template engine and test framework generators.
|
13
|
+
template engine and test framework generators.
|
@@ -6,12 +6,6 @@ module Rails
|
|
6
6
|
class ActionPermissionControllerGenerator < ScaffoldControllerGenerator
|
7
7
|
argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
|
8
8
|
source_root File.expand_path("../templates", __FILE__)
|
9
|
-
|
10
|
-
if ::Rails::VERSION::STRING < '3.1'
|
11
|
-
def module_namespacing
|
12
|
-
yield if block_given?
|
13
|
-
end
|
14
|
-
end
|
15
9
|
end
|
16
10
|
end
|
17
|
-
end
|
11
|
+
end
|
data/tags
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
|
2
|
+
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
|
3
|
+
!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/
|
4
|
+
!_TAG_PROGRAM_NAME Exuberant Ctags //
|
5
|
+
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
|
6
|
+
!_TAG_PROGRAM_VERSION 5.8 //
|
7
|
+
ActionPermission lib/action_permission/base.rb /^module ActionPermission$/;" m
|
8
|
+
ActionPermission lib/action_permission/controller.rb /^module ActionPermission$/;" m
|
9
|
+
ActionPermission lib/action_permission/dispatch.rb /^module ActionPermission$/;" m
|
10
|
+
ActionPermission lib/action_permission/railtie.rb /^module ActionPermission$/;" m
|
11
|
+
ActionPermission lib/action_permission/version.rb /^module ActionPermission$/;" m
|
12
|
+
ActionPermission lib/generators/action_permission/install/install_generator.rb /^module ActionPermission$/;" m
|
13
|
+
ActionPermission lib/generators/action_permission/permission/permission_generator.rb /^module ActionPermission$/;" m
|
14
|
+
ActionPermissionControllerGenerator lib/generators/rails/action_permission_controller_generator.rb /^ class ActionPermissionControllerGenerator < ScaffoldControllerGenerator$/;" c class:Rails.Generators
|
15
|
+
ApplicationPermission lib/generators/action_permission/install/templates/application.rb /^class ApplicationPermission < ActionPermission::Base$/;" c
|
16
|
+
Base lib/action_permission/base.rb /^ class Base$/;" c class:ActionPermission
|
17
|
+
ClassMethods lib/action_permission/controller.rb /^ module ClassMethods$/;" m class:ActionPermission.Controller
|
18
|
+
Controller lib/action_permission/controller.rb /^ module Controller$/;" m class:ActionPermission
|
19
|
+
Dispatch lib/action_permission/dispatch.rb /^ class Dispatch$/;" c class:ActionPermission
|
20
|
+
Generators lib/generators/action_permission/install/install_generator.rb /^ module Generators$/;" m class:ActionPermission
|
21
|
+
Generators lib/generators/action_permission/permission/permission_generator.rb /^ module Generators$/;" m class:ActionPermission
|
22
|
+
Generators lib/generators/rails/action_permission_controller_generator.rb /^ module Generators$/;" m class:Rails
|
23
|
+
InstallGenerator lib/generators/action_permission/install/install_generator.rb /^ class InstallGenerator < Rails::Generators::Base$/;" c class:ActionPermission.Generators
|
24
|
+
PermissionGenerator lib/generators/action_permission/permission/permission_generator.rb /^ class PermissionGenerator < Rails::Generators::NamedBase$/;" c class:ActionPermission.Generators
|
25
|
+
Rails lib/generators/rails/action_permission_controller_generator.rb /^module Rails$/;" m
|
26
|
+
Railtie lib/action_permission/railtie.rb /^ class Railtie < ::Rails::Railtie$/;" c class:ActionPermission
|
27
|
+
add_controller_setup lib/generators/action_permission/install/install_generator.rb /^ def add_controller_setup$/;" f class:ActionPermission.Generators.InstallGenerator
|
28
|
+
admin lib/generators/action_permission/permission/templates/permission.rb /^ def admin$/;" f
|
29
|
+
allow lib/action_permission/base.rb /^ def allow(actions, &block)$/;" f class:ActionPermission
|
30
|
+
allow? lib/action_permission/base.rb /^ def allow?(action, resource = nil)$/;" f class:ActionPermission
|
31
|
+
allow? lib/action_permission/dispatch.rb /^ def allow?(controller, action, resource = nil)$/;" f class:ActionPermission.Dispatch
|
32
|
+
allow_param? lib/action_permission/dispatch.rb /^ def allow_param?(resource, attribute)$/;" f class:ActionPermission.Dispatch
|
33
|
+
allow_params lib/action_permission/base.rb /^ def allow_params options=nil$/;" f class:ActionPermission
|
34
|
+
allow_params_with_options lib/action_permission/base.rb /^ def allow_params_with_options options$/;" f class:ActionPermission
|
35
|
+
allow_rest_actions lib/action_permission/base.rb /^ def allow_rest_actions(&block)$/;" f class:ActionPermission
|
36
|
+
allowed_params_for lib/action_permission/dispatch.rb /^ def allowed_params_for(resource, params, controller=nil)$/;" f class:ActionPermission.Dispatch
|
37
|
+
authorize_with lib/action_permission/controller.rb /^ def authorize_with authorizer$/;" f class:ActionPermission.Controller.ClassMethods
|
38
|
+
authorized? lib/action_permission/controller.rb /^ def authorized?$/;" f class:ActionPermission.Controller
|
39
|
+
check_permission lib/generators/action_permission/install/install_generator.rb /^ def check_permission$/;" f class:ActionPermission.Generators.InstallGenerator.add_controller_setup
|
40
|
+
copy_application_file lib/generators/action_permission/install/install_generator.rb /^ def copy_application_file$/;" f class:ActionPermission.Generators.InstallGenerator
|
41
|
+
create lib/generators/rails/templates/controller.rb /^ def create$/;" f
|
42
|
+
create_permission_file lib/generators/action_permission/permission/permission_generator.rb /^ def create_permission_file$/;" f class:ActionPermission.Generators.PermissionGenerator
|
43
|
+
current_permission lib/action_permission/controller.rb /^ def current_permission$/;" f class:ActionPermission.Controller
|
44
|
+
current_resource lib/action_permission/controller.rb /^ def current_resource$/;" f class:ActionPermission.Controller
|
45
|
+
current_user lib/generators/action_permission/install/install_generator.rb /^ def current_user$/;" f class:ActionPermission.Generators.InstallGenerator.add_controller_setup
|
46
|
+
destroy lib/generators/rails/templates/controller.rb /^ def destroy$/;" f
|
47
|
+
edit lib/generators/rails/templates/controller.rb /^ def edit$/;" f
|
48
|
+
get_class_name lib/action_permission/dispatch.rb /^ def get_class_name(controller)$/;" f class:ActionPermission.Dispatch.set_controller
|
49
|
+
guest lib/generators/action_permission/permission/templates/permission.rb /^ def guest$/;" f
|
50
|
+
index lib/generators/rails/templates/controller.rb /^ def index$/;" f
|
51
|
+
initialize lib/action_permission/base.rb /^ def initialize(membership)$/;" f class:ActionPermission
|
52
|
+
initialize lib/action_permission/dispatch.rb /^ def initialize(membership)$/;" f class:ActionPermission.Dispatch
|
53
|
+
load lib/action_permission/base.rb /^ def load(membership)$/;" f class:ActionPermission
|
54
|
+
load_permission lib/action_permission/dispatch.rb /^ def load_permission(controller)$/;" f class:ActionPermission.Dispatch.set_controller
|
55
|
+
match_with lib/action_permission/base.rb /^ def match_with source,to$/;" f class:ActionPermission.Base
|
56
|
+
new lib/generators/rails/templates/controller.rb /^ def new$/;" f
|
57
|
+
params lib/action_permission/base.rb /^ def params$/;" f class:ActionPermission
|
58
|
+
params lib/generators/action_permission/permission/templates/permission.rb /^ def params$/;" f
|
59
|
+
permission_authorizer lib/action_permission/controller.rb /^ def permission_authorizer$/;" f class:ActionPermission.Controller.ClassMethods
|
60
|
+
permission_authorizer lib/action_permission/controller.rb /^ def permission_authorizer$/;" f class:ActionPermission.Controller
|
61
|
+
register_permission lib/action_permission/dispatch.rb /^ def register_permission(controller, klass)$/;" f class:ActionPermission.Dispatch.set_controller
|
62
|
+
set_controller lib/action_permission/dispatch.rb /^ def set_controller(resource, controller)$/;" f class:ActionPermission.Dispatch
|
63
|
+
set_resource lib/action_permission/dispatch.rb /^ def set_resource(resource)$/;" f class:ActionPermission.Dispatch.set_controller
|
64
|
+
show lib/generators/rails/templates/controller.rb /^ def show$/;" f
|
65
|
+
update lib/generators/rails/templates/controller.rb /^ def update$/;" f
|
66
|
+
user lib/generators/action_permission/permission/templates/permission.rb /^ def user$/;" f
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: action_permission
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Duffy
|
@@ -10,76 +10,76 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-
|
13
|
+
date: 2014-07-01 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
|
-
- - ~>
|
19
|
+
- - "~>"
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
21
|
+
version: 4.0.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
|
-
- - ~>
|
26
|
+
- - "~>"
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version:
|
28
|
+
version: 4.0.0
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: bundler
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
|
-
- - ~>
|
33
|
+
- - "~>"
|
34
34
|
- !ruby/object:Gem::Version
|
35
35
|
version: '1.3'
|
36
36
|
type: :development
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
|
-
- - ~>
|
40
|
+
- - "~>"
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '1.3'
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: rake
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
|
-
- -
|
47
|
+
- - ">="
|
48
48
|
- !ruby/object:Gem::Version
|
49
49
|
version: '0'
|
50
50
|
type: :development
|
51
51
|
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
|
-
- -
|
54
|
+
- - ">="
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '0'
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
58
|
name: rspec
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
|
-
- - ~>
|
61
|
+
- - "~>"
|
62
62
|
- !ruby/object:Gem::Version
|
63
63
|
version: '2'
|
64
64
|
type: :development
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
|
-
- - ~>
|
68
|
+
- - "~>"
|
69
69
|
- !ruby/object:Gem::Version
|
70
70
|
version: '2'
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
72
|
name: activerecord-nulldb-adapter
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
|
-
- -
|
75
|
+
- - ">="
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: '0'
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
|
-
- -
|
82
|
+
- - ">="
|
83
83
|
- !ruby/object:Gem::Version
|
84
84
|
version: '0'
|
85
85
|
description:
|
@@ -91,8 +91,8 @@ executables: []
|
|
91
91
|
extensions: []
|
92
92
|
extra_rdoc_files: []
|
93
93
|
files:
|
94
|
-
- .gitignore
|
95
|
-
- .rspec
|
94
|
+
- ".gitignore"
|
95
|
+
- ".rspec"
|
96
96
|
- Gemfile
|
97
97
|
- LICENSE.txt
|
98
98
|
- README.md
|
@@ -117,6 +117,7 @@ files:
|
|
117
117
|
- spec/controller_spec.rb
|
118
118
|
- spec/dispatch_spec.rb
|
119
119
|
- spec/spec_helper.rb
|
120
|
+
- tags
|
120
121
|
homepage: https://github.com/mttdffy/action_permission
|
121
122
|
licenses:
|
122
123
|
- MIT
|
@@ -127,12 +128,12 @@ require_paths:
|
|
127
128
|
- lib
|
128
129
|
required_ruby_version: !ruby/object:Gem::Requirement
|
129
130
|
requirements:
|
130
|
-
- -
|
131
|
+
- - ">="
|
131
132
|
- !ruby/object:Gem::Version
|
132
133
|
version: '0'
|
133
134
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
134
135
|
requirements:
|
135
|
-
- -
|
136
|
+
- - ">="
|
136
137
|
- !ruby/object:Gem::Version
|
137
138
|
version: '0'
|
138
139
|
requirements: []
|