auth-assistant 0.4.0
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.
- data/.DS_Store +0 -0
- data/.document +5 -0
- data/.gitignore +39 -0
- data/Changelog.txt +30 -0
- data/LICENSE +20 -0
- data/README.markdown +308 -0
- data/Rakefile +20 -0
- data/VERSION +1 -0
- data/app/.DS_Store +0 -0
- data/app/views/.DS_Store +0 -0
- data/app/views/auth_assist/menu/_admin_login_items.html.erb +11 -0
- data/app/views/auth_assist/menu/_login_items.html.erb +11 -0
- data/app/views/auth_assist/menu/_registration_items.html.erb +10 -0
- data/auth-assistant.gemspec +115 -0
- data/config/locales/en.yml +14 -0
- data/init.rb +1 -0
- data/lib/.DS_Store +0 -0
- data/lib/auth-assistant.rb +24 -0
- data/lib/auth_assistant/configure.rb +16 -0
- data/lib/auth_assistant/helpers/admin_role.rb +59 -0
- data/lib/auth_assistant/helpers/all.rb +4 -0
- data/lib/auth_assistant/helpers/localhost.rb +22 -0
- data/lib/auth_assistant/helpers/roles.rb +52 -0
- data/lib/auth_assistant/helpers/user_role.rb +47 -0
- data/lib/auth_assistant/model/user_config.rb +42 -0
- data/lib/auth_assistant/role_strategies/admin_field.rb +37 -0
- data/lib/auth_assistant/role_strategies/all.rb +7 -0
- data/lib/auth_assistant/role_strategies/multi_role_assignment.rb +34 -0
- data/lib/auth_assistant/role_strategies/role_assignment.rb +41 -0
- data/lib/auth_assistant/role_strategies/role_field.rb +32 -0
- data/lib/auth_assistant/role_strategies/roles_field.rb +31 -0
- data/lib/auth_assistant/role_strategies/roles_mask.rb +35 -0
- data/lib/auth_assistant/role_strategies/shared.rb +25 -0
- data/lib/auth_assistant/translate/authlabels.rb +23 -0
- data/lib/auth_assistant/view/all.rb +4 -0
- data/lib/auth_assistant/view/auth_menu_item.rb +27 -0
- data/lib/auth_assistant/view/registration_link.rb +30 -0
- data/lib/auth_assistant/view/rest_link.rb +70 -0
- data/lib/auth_assistant/view/session_link.rb +31 -0
- data/lib/generators/.DS_Store +0 -0
- data/lib/generators/auth_assist/.DS_Store +0 -0
- data/lib/generators/auth_assist/clear/clear_generator.rb +30 -0
- data/lib/generators/auth_assist/config/.DS_Store +0 -0
- data/lib/generators/auth_assist/config/config_generator.rb +72 -0
- data/lib/generators/auth_assist/templates/ability.rb +22 -0
- data/lib/generators/auth_assist/templates/auth_assistant.rb +6 -0
- data/lib/generators/auth_assist/templates/permits.rb +91 -0
- data/lib/generators/auth_assist/templates/remove_multi_role_assignments_migration.rb +24 -0
- data/lib/generators/auth_assist/templates/remove_role_assignments_migration.rb +17 -0
- data/lib/generators/auth_assist/templates/role_assignments_migration.rb +14 -0
- data/lib/generators/auth_assist/templates/roles_migration.rb +13 -0
- data/lib/generators/auth_assist/test.rb +40 -0
- data/lib/generators/auth_assist/views/views_generator.rb +66 -0
- data/lib/generators/auth_code_refactor.rb +71 -0
- data/lib/generators/migration_helper.rb +81 -0
- data/lib/generators/reverse_migrations.rb +48 -0
- data/lib/generators/role_migrations.rb +167 -0
- data/lib/permits.rb +92 -0
- data/spec/auth-assistant_spec.rb +7 -0
- data/spec/generators/ability_gen_spec.rb +9 -0
- data/spec/sandbox.rb +9 -0
- data/spec/spec.opts +1 -0
- data/spec/spec_helper.rb +11 -0
- metadata +167 -0
@@ -0,0 +1,81 @@
|
|
1
|
+
require 'rails/generators/migration'
|
2
|
+
require 'generators/auth_code_refactor'
|
3
|
+
|
4
|
+
module AuthAssist
|
5
|
+
module MigrationHelper
|
6
|
+
include Rails::Generators::Migration
|
7
|
+
|
8
|
+
module ClassMethods
|
9
|
+
def migration_lookup_at(dirname) #:nodoc:
|
10
|
+
Dir.glob("#{dirname}/[0-9]*_*.rb")
|
11
|
+
end
|
12
|
+
|
13
|
+
def migration_exists?(dirname, file_name) #:nodoc:
|
14
|
+
migration_lookup_at(dirname).grep(/\d+_#{file_name}.rb$/).first
|
15
|
+
end
|
16
|
+
|
17
|
+
def current_migration_number(dirname) #:nodoc:
|
18
|
+
migration_lookup_at(dirname).collect do |file|
|
19
|
+
File.basename(file).split("_").first.to_i
|
20
|
+
end.max.to_i
|
21
|
+
end
|
22
|
+
|
23
|
+
def next_migration_number(dirname) #:nodoc:
|
24
|
+
orm = Rails.configuration.generators.options[:rails][:orm]
|
25
|
+
require "rails/generators/#{orm}"
|
26
|
+
"#{orm.to_s.camelize}::Generators::Base".constantize.next_migration_number(dirname)
|
27
|
+
rescue
|
28
|
+
raise NotImplementedError
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.included(base) #:nodoc:
|
33
|
+
puts "MigrationHelper included by #{base}"
|
34
|
+
base.extend ClassMethods
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
def migration(options)
|
39
|
+
# migration_template "migration.rb", "db/migrate/devise_create_#{table_name}"
|
40
|
+
run "rails g migration #{options}"
|
41
|
+
end
|
42
|
+
|
43
|
+
protected
|
44
|
+
|
45
|
+
include CodeRefactor
|
46
|
+
|
47
|
+
def model_exists?(name)
|
48
|
+
File.exists?(File.join(Rails.root, "app/models/#{name}.rb"))
|
49
|
+
end
|
50
|
+
|
51
|
+
def remove_model(name)
|
52
|
+
file = File.join(Rails.root, "app/models/#{name}.rb")
|
53
|
+
FileUtils.rm file if file
|
54
|
+
end
|
55
|
+
|
56
|
+
def remove_role_model
|
57
|
+
remove_model('role')
|
58
|
+
end
|
59
|
+
|
60
|
+
def remove_role_assignment_model
|
61
|
+
remove_model('role_assignment')
|
62
|
+
end
|
63
|
+
|
64
|
+
def generate_role_model
|
65
|
+
return if model_exists?('role')
|
66
|
+
run 'rails g model Role name:string'
|
67
|
+
write_model_file('role', role_file_content)
|
68
|
+
end
|
69
|
+
|
70
|
+
def generate_role_assignment_model
|
71
|
+
run 'rails g model RoleAssignment user_id:integer role_id:integer'
|
72
|
+
return if model_exists?('role_assignment')
|
73
|
+
write_model_file('role_assignment', role_assignment_file_content)
|
74
|
+
end
|
75
|
+
|
76
|
+
def model_file(name)
|
77
|
+
File.join(Rails.root, "app/models/#{name}.rb")
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
@@ -0,0 +1,48 @@
|
|
1
|
+
module AuthAssist
|
2
|
+
module MigrationHelper
|
3
|
+
def migration_dir
|
4
|
+
File.join(Rails.root, 'db/migrate')
|
5
|
+
end
|
6
|
+
|
7
|
+
def reverse_migration(mig_name)
|
8
|
+
if migration_exists?(mig_name)
|
9
|
+
new_migration = copy_migration(mig_name, "reverse_#{strategy_name}")
|
10
|
+
reverse_migration_method_names(new_migration)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def find_migration(name, &block)
|
15
|
+
FileUtils.cd migration_dir do
|
16
|
+
f = FileList['*.rb'].reject{|f| (f =~ /#{Regexp.escape(name)}/) == nil }.first
|
17
|
+
return block.call(f) if block
|
18
|
+
end
|
19
|
+
f
|
20
|
+
end
|
21
|
+
|
22
|
+
def migration_exists?(name)
|
23
|
+
find_migration(name)
|
24
|
+
end
|
25
|
+
|
26
|
+
def copy_migration(name, new_name, &block)
|
27
|
+
# create empty new migration
|
28
|
+
migration new_name
|
29
|
+
new_migration = find_migration(name)
|
30
|
+
find_migration(name) do |mig|
|
31
|
+
FileUtils.cp mig, new_migration
|
32
|
+
end
|
33
|
+
return block.call(new_migration) if block
|
34
|
+
new_migration
|
35
|
+
end
|
36
|
+
|
37
|
+
def reverse_migration_methods(new_migration)
|
38
|
+
file_swap_content(new_migration, 'self.up', 'self.down')
|
39
|
+
end
|
40
|
+
|
41
|
+
def file_reverse(file, str1, str2)
|
42
|
+
# use thor action
|
43
|
+
file.replace str1, str2
|
44
|
+
file.replace str2, str1
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,167 @@
|
|
1
|
+
require 'generators/migration_helper'
|
2
|
+
|
3
|
+
module AuthAssist
|
4
|
+
module RoleMigrations
|
5
|
+
|
6
|
+
def self.clazz(name)
|
7
|
+
"AuthAssist::RoleMigrations::#{name.camelize}".constantize
|
8
|
+
end
|
9
|
+
|
10
|
+
class Base
|
11
|
+
include ::AuthAssist::MigrationHelper
|
12
|
+
|
13
|
+
attr_accessor :generator
|
14
|
+
|
15
|
+
def initialize(generator)
|
16
|
+
@generator = generator
|
17
|
+
end
|
18
|
+
|
19
|
+
def generate_reverse_migration
|
20
|
+
return reverse_migration if respond_to? :reverse_migration
|
21
|
+
generation.reverse_migration(migration_names.first)
|
22
|
+
end
|
23
|
+
|
24
|
+
def setup
|
25
|
+
run_migration if respond_to? :run_migration
|
26
|
+
configure if respond_to? :configure
|
27
|
+
end
|
28
|
+
|
29
|
+
protected
|
30
|
+
def migration(options)
|
31
|
+
generator.migration options
|
32
|
+
end
|
33
|
+
|
34
|
+
def insert_user_relation(relation)
|
35
|
+
generator.insert_user_relation relation
|
36
|
+
end
|
37
|
+
|
38
|
+
def remove_user_relation(relation)
|
39
|
+
generator.remove_user_relation(relation)
|
40
|
+
end
|
41
|
+
|
42
|
+
def generate_role_model
|
43
|
+
generator.generate_role_model
|
44
|
+
end
|
45
|
+
|
46
|
+
def remove_role_model
|
47
|
+
generator.remove_role_model
|
48
|
+
end
|
49
|
+
|
50
|
+
def remove_role_assignment_model
|
51
|
+
generator.remove_role_model
|
52
|
+
end
|
53
|
+
|
54
|
+
def generate_role_assignment_model
|
55
|
+
generator.generate_role_assignment_model
|
56
|
+
end
|
57
|
+
|
58
|
+
def migration_template(source, target)
|
59
|
+
generator.migration_template source, target
|
60
|
+
end
|
61
|
+
|
62
|
+
end
|
63
|
+
|
64
|
+
class AdminField < Base
|
65
|
+
def migration_names
|
66
|
+
['add_admin_field_to_user']
|
67
|
+
end
|
68
|
+
|
69
|
+
def run_migration
|
70
|
+
migration "#{admin_field_migration_name} admin:boolean"
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
|
75
|
+
class RolesMask < Base
|
76
|
+
def migration_names
|
77
|
+
['add_roles_mask_to_user']
|
78
|
+
end
|
79
|
+
|
80
|
+
def run_migration
|
81
|
+
migration "#{roles_mask_migration_name} roles_mask:integer"
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
|
86
|
+
class RolesField < Base
|
87
|
+
def migration_names
|
88
|
+
['add_roles_field_to_user']
|
89
|
+
end
|
90
|
+
|
91
|
+
def run_migration
|
92
|
+
migration "#{roles_field_migration_name} roles:string"
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
|
97
|
+
|
98
|
+
class RoleField < Base
|
99
|
+
def migration_names
|
100
|
+
['add_role_field_to_user']
|
101
|
+
end
|
102
|
+
|
103
|
+
def run_migration
|
104
|
+
migration "#{role_field_migration_name} role:string"
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
|
109
|
+
class RoleAssignment < Base
|
110
|
+
def migration_names
|
111
|
+
['add_role_id_to_user', 'create_roles']
|
112
|
+
end
|
113
|
+
|
114
|
+
def run_migration
|
115
|
+
migration 'add_role_id_to_user role_id:integer'
|
116
|
+
migration 'create_roles name:string'
|
117
|
+
end
|
118
|
+
|
119
|
+
def configure
|
120
|
+
generate_role_model
|
121
|
+
insert_user_relation(has_roles)
|
122
|
+
end
|
123
|
+
|
124
|
+
def reverse_configure
|
125
|
+
remove_role_model
|
126
|
+
remove_user_relation(has_roles)
|
127
|
+
end
|
128
|
+
|
129
|
+
def reverse_migration
|
130
|
+
migration_template 'remove_role_assignments_migration.rb', 'remove_role_assignments'
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
class MultiRoleAssignment < Base
|
135
|
+
def migration_names
|
136
|
+
['add_role_assignment_id_to_user', 'create_role_assignments', 'create_roles']
|
137
|
+
end
|
138
|
+
|
139
|
+
def run_migration
|
140
|
+
migration 'add_role_assignment_id_to_user role_assignment_id:integer'
|
141
|
+
migration 'create_role_assignments role_id:integer user_id:integer'
|
142
|
+
migration 'create_roles name:string'
|
143
|
+
end
|
144
|
+
|
145
|
+
def configure
|
146
|
+
insert_user_relation(has_role_assignments)
|
147
|
+
insert_user_relation(has_roles_through_assignments)
|
148
|
+
|
149
|
+
generate_role_model
|
150
|
+
generate_role_assignment_model
|
151
|
+
end
|
152
|
+
|
153
|
+
def reverse_configure
|
154
|
+
remove_role_model
|
155
|
+
remove_role_assignment_model
|
156
|
+
|
157
|
+
remove_user_relation(has_role_assignments)
|
158
|
+
remove_user_relation(has_roles_through_assignments)
|
159
|
+
end
|
160
|
+
|
161
|
+
def reverse_migration
|
162
|
+
migration_template 'remove_multi_role_assignments_migration.rb', 'remove_multi_role_assignments'
|
163
|
+
end
|
164
|
+
|
165
|
+
end
|
166
|
+
end
|
167
|
+
end
|
data/lib/permits.rb
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
module RolePermit
|
2
|
+
|
3
|
+
class Base
|
4
|
+
attr_accessor :ability
|
5
|
+
|
6
|
+
def initialize(ability)
|
7
|
+
@ability = ability
|
8
|
+
end
|
9
|
+
|
10
|
+
def can(action, subject, conditions = nil, &block)
|
11
|
+
ability.can(action, subject, conditions, &block)
|
12
|
+
end
|
13
|
+
|
14
|
+
def cannot(action, subject, conditions = nil, &block)
|
15
|
+
ability.cannot(action, subject, conditions, &block)
|
16
|
+
end
|
17
|
+
|
18
|
+
def owns(user, clazz)
|
19
|
+
can :manage, clazz do |comment|
|
20
|
+
comment.try(:user) == user || comment.try(:owner) == user
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def permit?(user)
|
25
|
+
user.has ability
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
class Admin < Base
|
30
|
+
def initialize(ability)
|
31
|
+
super
|
32
|
+
end
|
33
|
+
|
34
|
+
def permit?(user)
|
35
|
+
super
|
36
|
+
return if !user.role? :admin
|
37
|
+
can :manage, :all
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
class User < Base
|
42
|
+
def initialize(ability)
|
43
|
+
super
|
44
|
+
end
|
45
|
+
|
46
|
+
def permit?(user)
|
47
|
+
super
|
48
|
+
return if user.role? :admin
|
49
|
+
can :read, :all
|
50
|
+
|
51
|
+
# user.owns(Comment)
|
52
|
+
|
53
|
+
# a user can manage comments he/she created
|
54
|
+
# can :manage, Comment do |comment|
|
55
|
+
# comment.try(:user) == user
|
56
|
+
# end
|
57
|
+
|
58
|
+
# can :create, Comment
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
class Moderator < Base
|
63
|
+
def initialize(ability)
|
64
|
+
super
|
65
|
+
end
|
66
|
+
|
67
|
+
def permit?(user)
|
68
|
+
super
|
69
|
+
return if !user.role?(:moderator)
|
70
|
+
can :read, :all
|
71
|
+
# owns(user, Comment)
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
|
76
|
+
class Author < Base
|
77
|
+
def initialize(ability)
|
78
|
+
super
|
79
|
+
end
|
80
|
+
|
81
|
+
def permit?(user)
|
82
|
+
super
|
83
|
+
return if !user.role? :author
|
84
|
+
# can :create, Post
|
85
|
+
|
86
|
+
# an author can manage posts he/she created
|
87
|
+
# can :update, Post do |post|
|
88
|
+
# post.try(:user) == user
|
89
|
+
# end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
data/spec/sandbox.rb
ADDED
data/spec/spec.opts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--color
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
|
+
require 'rspec'
|
4
|
+
require 'rspec/autorun'
|
5
|
+
require 'rails'
|
6
|
+
# require 'auth-assistant'
|
7
|
+
|
8
|
+
Rspec.configure do |c|
|
9
|
+
# c.mock_with :rspec
|
10
|
+
end
|
11
|
+
|
metadata
ADDED
@@ -0,0 +1,167 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: auth-assistant
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 4
|
8
|
+
- 0
|
9
|
+
version: 0.4.0
|
10
|
+
platform: ruby
|
11
|
+
authors:
|
12
|
+
- Kristian Mandrup
|
13
|
+
autorequire:
|
14
|
+
bindir: bin
|
15
|
+
cert_chain: []
|
16
|
+
|
17
|
+
date: 2010-05-18 00:00:00 -04:00
|
18
|
+
default_executable:
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: rspec
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ">="
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 2
|
29
|
+
- 0
|
30
|
+
- 0
|
31
|
+
version: 2.0.0
|
32
|
+
type: :development
|
33
|
+
version_requirements: *id001
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
name: devise
|
36
|
+
prerelease: false
|
37
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
segments:
|
42
|
+
- 1
|
43
|
+
- 0
|
44
|
+
version: "1.0"
|
45
|
+
type: :runtime
|
46
|
+
version_requirements: *id002
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: cancan
|
49
|
+
prerelease: false
|
50
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
segments:
|
55
|
+
- 1
|
56
|
+
- 0
|
57
|
+
version: "1.0"
|
58
|
+
type: :runtime
|
59
|
+
version_requirements: *id003
|
60
|
+
description: Provides assistance for setting up an auth solution using devise and cancan auth frameworks
|
61
|
+
email: kmandrup@gmail.com
|
62
|
+
executables: []
|
63
|
+
|
64
|
+
extensions: []
|
65
|
+
|
66
|
+
extra_rdoc_files:
|
67
|
+
- LICENSE
|
68
|
+
- README.markdown
|
69
|
+
files:
|
70
|
+
- .DS_Store
|
71
|
+
- .document
|
72
|
+
- .gitignore
|
73
|
+
- Changelog.txt
|
74
|
+
- LICENSE
|
75
|
+
- README.markdown
|
76
|
+
- Rakefile
|
77
|
+
- VERSION
|
78
|
+
- app/.DS_Store
|
79
|
+
- app/views/.DS_Store
|
80
|
+
- app/views/auth_assist/menu/_admin_login_items.html.erb
|
81
|
+
- app/views/auth_assist/menu/_login_items.html.erb
|
82
|
+
- app/views/auth_assist/menu/_registration_items.html.erb
|
83
|
+
- auth-assistant.gemspec
|
84
|
+
- config/locales/en.yml
|
85
|
+
- init.rb
|
86
|
+
- lib/.DS_Store
|
87
|
+
- lib/auth-assistant.rb
|
88
|
+
- lib/auth_assistant/configure.rb
|
89
|
+
- lib/auth_assistant/helpers/admin_role.rb
|
90
|
+
- lib/auth_assistant/helpers/all.rb
|
91
|
+
- lib/auth_assistant/helpers/localhost.rb
|
92
|
+
- lib/auth_assistant/helpers/roles.rb
|
93
|
+
- lib/auth_assistant/helpers/user_role.rb
|
94
|
+
- lib/auth_assistant/model/user_config.rb
|
95
|
+
- lib/auth_assistant/role_strategies/admin_field.rb
|
96
|
+
- lib/auth_assistant/role_strategies/all.rb
|
97
|
+
- lib/auth_assistant/role_strategies/multi_role_assignment.rb
|
98
|
+
- lib/auth_assistant/role_strategies/role_assignment.rb
|
99
|
+
- lib/auth_assistant/role_strategies/role_field.rb
|
100
|
+
- lib/auth_assistant/role_strategies/roles_field.rb
|
101
|
+
- lib/auth_assistant/role_strategies/roles_mask.rb
|
102
|
+
- lib/auth_assistant/role_strategies/shared.rb
|
103
|
+
- lib/auth_assistant/translate/authlabels.rb
|
104
|
+
- lib/auth_assistant/view/all.rb
|
105
|
+
- lib/auth_assistant/view/auth_menu_item.rb
|
106
|
+
- lib/auth_assistant/view/registration_link.rb
|
107
|
+
- lib/auth_assistant/view/rest_link.rb
|
108
|
+
- lib/auth_assistant/view/session_link.rb
|
109
|
+
- lib/generators/.DS_Store
|
110
|
+
- lib/generators/auth_assist/.DS_Store
|
111
|
+
- lib/generators/auth_assist/clear/clear_generator.rb
|
112
|
+
- lib/generators/auth_assist/config/.DS_Store
|
113
|
+
- lib/generators/auth_assist/config/config_generator.rb
|
114
|
+
- lib/generators/auth_assist/templates/ability.rb
|
115
|
+
- lib/generators/auth_assist/templates/auth_assistant.rb
|
116
|
+
- lib/generators/auth_assist/templates/permits.rb
|
117
|
+
- lib/generators/auth_assist/templates/remove_multi_role_assignments_migration.rb
|
118
|
+
- lib/generators/auth_assist/templates/remove_role_assignments_migration.rb
|
119
|
+
- lib/generators/auth_assist/templates/role_assignments_migration.rb
|
120
|
+
- lib/generators/auth_assist/templates/roles_migration.rb
|
121
|
+
- lib/generators/auth_assist/test.rb
|
122
|
+
- lib/generators/auth_assist/views/views_generator.rb
|
123
|
+
- lib/generators/auth_code_refactor.rb
|
124
|
+
- lib/generators/migration_helper.rb
|
125
|
+
- lib/generators/reverse_migrations.rb
|
126
|
+
- lib/generators/role_migrations.rb
|
127
|
+
- lib/permits.rb
|
128
|
+
- spec/auth-assistant_spec.rb
|
129
|
+
- spec/generators/ability_gen_spec.rb
|
130
|
+
- spec/sandbox.rb
|
131
|
+
- spec/spec.opts
|
132
|
+
- spec/spec_helper.rb
|
133
|
+
has_rdoc: true
|
134
|
+
homepage: http://github.com/kristianmandrup/devise-assistant
|
135
|
+
licenses: []
|
136
|
+
|
137
|
+
post_install_message:
|
138
|
+
rdoc_options:
|
139
|
+
- --charset=UTF-8
|
140
|
+
require_paths:
|
141
|
+
- lib
|
142
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - ">="
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
segments:
|
147
|
+
- 0
|
148
|
+
version: "0"
|
149
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - ">="
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
segments:
|
154
|
+
- 0
|
155
|
+
version: "0"
|
156
|
+
requirements: []
|
157
|
+
|
158
|
+
rubyforge_project:
|
159
|
+
rubygems_version: 1.3.6
|
160
|
+
signing_key:
|
161
|
+
specification_version: 3
|
162
|
+
summary: Provides assistance for setting up an auth solution
|
163
|
+
test_files:
|
164
|
+
- spec/auth-assistant_spec.rb
|
165
|
+
- spec/generators/ability_gen_spec.rb
|
166
|
+
- spec/sandbox.rb
|
167
|
+
- spec/spec_helper.rb
|