cream 0.5.6
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/.document +5 -0
- data/.gitignore +39 -0
- data/.rspec +1 -0
- data/Changelog.txt +8 -0
- data/Gemfile +27 -0
- data/LICENSE +20 -0
- data/README.markdown +196 -0
- data/Rakefile +40 -0
- data/VERSION +1 -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/config/locales/en.yml +14 -0
- data/cream.gemspec +169 -0
- data/features/FEATURE_NOTES.txt +6 -0
- data/features/permission/adds_permission.feature +0 -0
- data/features/role_strategy/adds_role_strategy.feature +0 -0
- data/features/role_strategy/clears_role_strategy.feature +0 -0
- data/init.rb +1 -0
- data/lib/cream.rb +21 -0
- data/lib/cream/configure.rb +3 -0
- data/lib/cream/configure/after_init/role_config.rb +29 -0
- data/lib/cream/configure/rails.rb +23 -0
- data/lib/cream/controller/ability.rb +7 -0
- data/lib/cream/helper/authlabels.rb +21 -0
- data/lib/cream/helper/host.rb +11 -0
- data/lib/cream/helper/role.rb +48 -0
- data/lib/cream/namespaces.rb +5 -0
- data/lib/cream/role.rb +7 -0
- data/lib/cream/view/host_area.rb +12 -0
- data/lib/cream/view/role_area.rb +38 -0
- data/lib/cream/view/user_action_menu.rb +21 -0
- data/lib/generators/cream/config/DESIGN NOTES.markdown +61 -0
- data/lib/generators/cream/config/config_generator.rb +72 -0
- data/lib/generators/cream/config/modules/cancan_config.rb +22 -0
- data/lib/generators/cream/config/modules/cream_config.rb +23 -0
- data/lib/generators/cream/config/modules/devise_config.rb +108 -0
- data/lib/generators/cream/config/modules/helper.rb +57 -0
- data/lib/generators/cream/config/modules/permits_config.rb +15 -0
- data/lib/generators/cream/config/modules/roles_config.rb +15 -0
- data/lib/generators/cream/views/haml_util.rb +44 -0
- data/lib/generators/cream/views/views_generator.rb +34 -0
- data/lib/generators/cream_refactor.rb +82 -0
- data/log/development.log +0 -0
- data/sandbox/test.rb +40 -0
- data/spec/cream/configure/rails_spec.rb +51 -0
- data/spec/cream/helper/host_spec.rb +68 -0
- data/spec/cream/helper/role_spec.rb +187 -0
- data/spec/cream/view/host_area_spec.rb +61 -0
- data/spec/cream/view/role_area_spec.rb +124 -0
- data/spec/cream/view/role_ext_spec.rb +36 -0
- data/spec/generator_spec_helper.rb +26 -0
- data/spec/generators/cream/config/devise/existing_devise_users.rb +61 -0
- data/spec/generators/cream/config/empty_app/default_args_spec.rb +51 -0
- data/spec/generators/cream/config/permits/existing_permits_spec.rb +0 -0
- data/spec/generators/cream/config/permits/no_permits_spec.rb +0 -0
- data/spec/generators/cream/config/roles/default_roles.rb +51 -0
- data/spec/generators/cream/config/roles/roles_spec.rb +60 -0
- data/spec/generators/cream/shared_examples.rb +18 -0
- data/spec/generators/cream/views_generator_spec.rb +30 -0
- data/spec/spec_helper.rb +18 -0
- data/wiki/CONFIG_GENERATOR.txt +21 -0
- data/wiki/DESIGN.txt +21 -0
- data/wiki/INSTALLATION.txt +6 -0
- data/wiki/PERMITS.txt +32 -0
- data/wiki/ROLE_STRATEGIES.txt +40 -0
- data/wiki/SPEC_NOTES.txt +6 -0
- data/wiki/VIEWS_GENERATOR.txt +35 -0
- data/wiki/VIEW_HELPERS.txt +162 -0
- metadata +374 -0
data/.document
ADDED
data/.gitignore
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
# rcov generated
|
2
|
+
coverage
|
3
|
+
|
4
|
+
# rdoc generated
|
5
|
+
rdoc
|
6
|
+
|
7
|
+
# yard generated
|
8
|
+
doc
|
9
|
+
.yardoc
|
10
|
+
|
11
|
+
# jeweler generated
|
12
|
+
pkg
|
13
|
+
|
14
|
+
# Have editor/IDE/OS specific files you need to ignore? Consider using a global gitignore:
|
15
|
+
#
|
16
|
+
# * Create a file at ~/.gitignore
|
17
|
+
# * Include files you want ignored
|
18
|
+
# * Run: git config --global core.excludesfile ~/.gitignore
|
19
|
+
#
|
20
|
+
# After doing this, these files will be ignored in all your git projects,
|
21
|
+
# saving you from having to 'pollute' every project you touch with them
|
22
|
+
#
|
23
|
+
# Not sure what to needs to be ignored for particular editors/OSes? Here's some ideas to get you started. (Remember, remove the leading # of the line)
|
24
|
+
#
|
25
|
+
# For MacOS:
|
26
|
+
#
|
27
|
+
.DS_Store
|
28
|
+
#
|
29
|
+
# For TextMate
|
30
|
+
*.tmproj
|
31
|
+
tmtags
|
32
|
+
#
|
33
|
+
# For emacs:
|
34
|
+
*~
|
35
|
+
\#*
|
36
|
+
.\#*
|
37
|
+
#
|
38
|
+
# For vim:
|
39
|
+
*.swp
|
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--format nested --color
|
data/Changelog.txt
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
source :rubygems
|
2
|
+
source 'http://gems.github.com/'
|
3
|
+
|
4
|
+
group :default do
|
5
|
+
gem "devise-links", "~> 0.1.1"
|
6
|
+
gem "cancan-rest-links", "~> 0.1.1"
|
7
|
+
gem "cancan-permits", "~> 0.1.1"
|
8
|
+
|
9
|
+
gem "require_all", ">= 1.1.0"
|
10
|
+
|
11
|
+
gem "devise", ">= 1.1.2"
|
12
|
+
gem "cancan", "~> 1.3.4"
|
13
|
+
gem "rails", "~> 3.0.0"
|
14
|
+
|
15
|
+
gem "rails3_artifactor", "~> 0.2.4"
|
16
|
+
gem 'logging_assist', "~> 0.1.2"
|
17
|
+
|
18
|
+
gem "r3_plugin_toolbox", "~> 0.3.6"
|
19
|
+
gem "sugar-high", "~> 0.2.10"
|
20
|
+
end
|
21
|
+
|
22
|
+
group :test do
|
23
|
+
gem "rspec", "~> 2.0.0.beta.22"
|
24
|
+
gem "generator-spec", "~> 0.6.4"
|
25
|
+
gem "rspec-action_view", "~> 0.3.1"
|
26
|
+
gem "rails-app-spec", "~> 0.2.11"
|
27
|
+
end
|
data/LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2009 Kristian Mandrup
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.markdown
ADDED
@@ -0,0 +1,196 @@
|
|
1
|
+
# Cream
|
2
|
+
|
3
|
+
This project aims to assist you in setting up a complete user login and role permission system for your Rails 3 app.
|
4
|
+
It targets [Devise](http://github.com/plataformatec/devise) as the Session system, [CanCan](http://github.com/ryanb/cancan) as the permission system and
|
5
|
+
[Roles](http://github.com/kristianmandrup/roles_generic) as the user Roles system.
|
6
|
+
|
7
|
+
The objective of this project is to
|
8
|
+
* Integrate all these sub-systems
|
9
|
+
* Provide a generator that can auto-configure your Rails 3 app with these sub-systems for a given ORM
|
10
|
+
|
11
|
+
## Status
|
12
|
+
|
13
|
+
This project and the gems it assembles should all mostly work. I am currently going through all the supporting gems, making sure dependencies
|
14
|
+
are updated and that they use the latest APIs of the other gems and all specs pass. Stay tuned!
|
15
|
+
The config generators is currently under construction and needs some fine-tuning to bring all the gems together.
|
16
|
+
|
17
|
+
I have now also started a new project called [Cream rails 3 app](http://github.com/kristianmandrup/cream-rails3-app) which is to be a template Rails 3 project
|
18
|
+
that demonstrates what a final Rails 3 app using Cream will look like. I plan to use this as a template for the Cream config generator, making sure that given
|
19
|
+
Mongo Mapper as the ORM and default arguments, the generartor should generate a "mirror image" of this template project. You are most welcome to help me in this effort
|
20
|
+
or provide suggestions etc. The README of the template project will contain a recipe with the steps to be taken to produce it ;)
|
21
|
+
|
22
|
+
NOTE: I have renamed the old 'auth-assistant' project to this project called 'cream'.
|
23
|
+
|
24
|
+
## Session systems
|
25
|
+
|
26
|
+
Cream targets [Devise](http://github.com/plataformatec/devise) as the Session system of choice
|
27
|
+
|
28
|
+
* [devise](http://github.com/plataformatec/devise)
|
29
|
+
|
30
|
+
### Devise links
|
31
|
+
|
32
|
+
The project [devise links](http://github.com/kristianmandrup/devise-links) adds more convenience for creating view links to trigger Devise session actions.
|
33
|
+
|
34
|
+
## Roles
|
35
|
+
|
36
|
+
I have developed a flexible *Generic Roles* strategy system.
|
37
|
+
|
38
|
+
* [Generic Role Strategies](http://github.com/kristianmandrup/roles_generic)
|
39
|
+
|
40
|
+
Roles for popular ORMs
|
41
|
+
|
42
|
+
The Roles Generic API has been implemented for the following ORMs
|
43
|
+
|
44
|
+
* [Roles Active Record](http://github.com/kristianmandrup/roles_active_record)
|
45
|
+
* [Roles DataMapper](http://github.com/kristianmandrup/roles_data_mapper)
|
46
|
+
* [Roles MongoMapper](http://github.com/kristianmandrup/roles_mongo_mapper)
|
47
|
+
* [Roles Mongoid](http://github.com/kristianmandrup/roles_for_mongoid)
|
48
|
+
|
49
|
+
_Role Groups_
|
50
|
+
Document DBs such as *Mongo* and *Riak* are good for modeling a role-group hierarchical relationship.
|
51
|
+
Role-Group support is planned as a future add-on for the roles strategies integration. (Any assistance appreciated!)
|
52
|
+
|
53
|
+
_Note:_
|
54
|
+
You are most welcome to provide "plugins" for any other role frameworks. Please follow the API conventions of Roles generic.
|
55
|
+
|
56
|
+
## Permission systems
|
57
|
+
|
58
|
+
There is support for the [CanCan](http://github.com/ryanb/cancan) permission system.
|
59
|
+
I have created a [Cancan permits](http://github.com/kristianmandrup/cancan-permits) gem that adds the concept of Permits for each role (see below)
|
60
|
+
|
61
|
+
I'm considering supporting [Canable](http://github.com/jnunemaker/canable) as well (but only if requested by the community!)
|
62
|
+
|
63
|
+
_Note:_
|
64
|
+
You are most welcome to provide "plugins" for other permission frameworks!
|
65
|
+
|
66
|
+
## ORMs
|
67
|
+
|
68
|
+
In general, it should now finally be pretty easy to set up a Rails 3 app, with a full Session system, Permission system linked to a Role strategy system using any ORM. Devise supports the following ORMS:
|
69
|
+
|
70
|
+
* Active Record
|
71
|
+
* Data Mapper
|
72
|
+
* Mongo Mapper
|
73
|
+
* Mongoid
|
74
|
+
|
75
|
+
These ORMs are also supported for the Roles strategy system. The Permission system should not have any ORM dependency.
|
76
|
+
There are plans to create a top-level generator which sets up your project with all these systems for a given ORM.
|
77
|
+
|
78
|
+
## Installation and configuration ##
|
79
|
+
|
80
|
+
This gem has been designed for Rails 3 only.
|
81
|
+
|
82
|
+
### Install gems
|
83
|
+
|
84
|
+
Insert <pre>gem 'cream'</pre> in your Rails 3 Gemfile
|
85
|
+
<pre>$ bundle install</pre>
|
86
|
+
|
87
|
+
### Install as plugin
|
88
|
+
|
89
|
+
In the near future...
|
90
|
+
|
91
|
+
<code>rails plugin install http://github.com/kristianmandrup/cream.git</code>
|
92
|
+
|
93
|
+
## Role system
|
94
|
+
|
95
|
+
Role strategies can be set up using the [Roles Generic](http://github.com/kristianmandrup/roles_generic) gem or any of the ORM specific roles gems such as [Roles - Active Record](http://github.com/kristianmandrup/roles_active_record). There are currently Roles implementations for the following ORMs:
|
96
|
+
|
97
|
+
* Active Record
|
98
|
+
* Data Mapper
|
99
|
+
* Mongo Mapper
|
100
|
+
* Mongoid
|
101
|
+
|
102
|
+
## Permission system
|
103
|
+
|
104
|
+
The only Permission system currently supported is *CanCan*.
|
105
|
+
|
106
|
+
### CanCan
|
107
|
+
|
108
|
+
Role based authorization for [CanCan](http://github.com/ryanb/cancan) is currently done by creating *Permits* for each role.
|
109
|
+
A *Permit* lets a user in a given role do certain actions as defined in the Permit.
|
110
|
+
|
111
|
+
The *config* generator will generate a set of Permit files which are placed in '/app/permits'. You can then edit the Permits to suit your needs.
|
112
|
+
|
113
|
+
The project [CanCan REST links](http://github.com/kristianmandrup/cancan-rest-links) provides a convenient way to handle CanCan REST links, using a flexible API.
|
114
|
+
|
115
|
+
### Canable
|
116
|
+
|
117
|
+
In [Canable](http://github.com/jnunemaker/canable) the permissions are by default defined in the models.
|
118
|
+
I plan to tweak this behavior to enable the same or a similar central permission setup as I use for CanCan.
|
119
|
+
In my (somewhat old and degenerate) fork of *Canable*, I have generators to setup the models and user with a *Canable* config.
|
120
|
+
|
121
|
+
_Note_: These generators should be updated to take advantage of my latest generator-spec and other supporting generator assitant gems!
|
122
|
+
|
123
|
+
More to follow in the future...
|
124
|
+
|
125
|
+
## Permits
|
126
|
+
|
127
|
+
Currently CanCan is supported as the permission system. I have added the concept of Permits linked to Roles.
|
128
|
+
|
129
|
+
Check out [Cancan permits](http://github.com/kristianmandrup/cancan-permits) for more info for how to use Permits.
|
130
|
+
|
131
|
+
_Note_: In the future I will add the ability for a given role to have multiple Permits in a PermitSet, so that Permits are stand-alone and not linked to a given role, which
|
132
|
+
allows permits to be reused for multiple roles. Stay tuned or join in the effort!
|
133
|
+
|
134
|
+
## Generators
|
135
|
+
|
136
|
+
The following generators are currently available
|
137
|
+
|
138
|
+
* config - Configure Rails 3 application with devise Session strategies, a Role strategy, valid roles, and Permits
|
139
|
+
* views - Generate partials to display menu items for Session actions such as logout, login etc.
|
140
|
+
|
141
|
+
The *config* generator should automatically setup up your project with Devise, a Roles strategy of choice a Permission system of choice and all using an ORM of your choice!
|
142
|
+
|
143
|
+
Cream will support these ORMs:
|
144
|
+
|
145
|
+
* Active Record
|
146
|
+
* Data Mapper
|
147
|
+
* Mongo Mapper
|
148
|
+
* Mongoid
|
149
|
+
|
150
|
+
Status 17 sept, 2010:
|
151
|
+
The latest *generator-spec* and other supporting generator utils I've created (such as rails3_artifactor) should facilitate finishing this generator...
|
152
|
+
|
153
|
+
The goal is to make the generator:
|
154
|
+
* Configure the Rails 3 app with appropriate gems for the sub-systems
|
155
|
+
* Run various other generators
|
156
|
+
|
157
|
+
The result should be a full (or nearly full) integration of all the sub-systems mentioned for a given Rails 3 app with the ORM of choice.
|
158
|
+
|
159
|
+
See [Cream rails 3 app](http://github.com/kristianmandrup/cream-rails3-app) to get an idea of the end goal.
|
160
|
+
|
161
|
+
### Config Generator ###
|
162
|
+
|
163
|
+
<code>rails g cream::config --strategy ROLE_STRATEGY [--init-devise] [--admin_user] [--orm] [--roles]</code>
|
164
|
+
|
165
|
+
* --strategy : role strategy to use (see *roles_generic* gem)
|
166
|
+
* --init-devise : run devise generator to create devise Users with session/auth strategies
|
167
|
+
* --admin-user : create admin user model with separate devise configuration
|
168
|
+
* --orm : orm to be used
|
169
|
+
* --roles : list of valid roles to use
|
170
|
+
|
171
|
+
Example
|
172
|
+
|
173
|
+
<code>rails g cream:config admin_flag --devise --admin --orm AR</code>
|
174
|
+
|
175
|
+
### Views Generator ###
|
176
|
+
|
177
|
+
Moves 'user menu' partials views into app/views/_user_menu
|
178
|
+
|
179
|
+
<code>rails g cream::views [scope] [--haml]</code>
|
180
|
+
|
181
|
+
* scope : The scope folder under views to copy the partials to, fx 'admin'
|
182
|
+
* --haml : Use HAML as template language
|
183
|
+
|
184
|
+
## Note on Patches/Pull Requests ##
|
185
|
+
|
186
|
+
* Fork the project.
|
187
|
+
* Make your feature addition or bug fix.
|
188
|
+
* Add tests for it. This is important so I don't break it in a
|
189
|
+
future version unintentionally.
|
190
|
+
* Commit, do not mess with rakefile, version, or history.
|
191
|
+
(if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
|
192
|
+
* Send me a pull request. Bonus points for topic branches.
|
193
|
+
|
194
|
+
## Copyright ##
|
195
|
+
|
196
|
+
Copyright (c) 2010 Kristian Mandrup. See LICENSE for details.
|
data/Rakefile
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
begin
|
2
|
+
require 'jeweler'
|
3
|
+
Jeweler::Tasks.new do |gem|
|
4
|
+
gem.name = "cream"
|
5
|
+
gem.summary = %Q{Integrates Devise, Roles and CanCan with Permits for a Rails 3 app}
|
6
|
+
gem.description = %Q{Provides assistance for setting up Session, Role and Permission systems for a Rails 3 app. Support for multiple ORMs}
|
7
|
+
gem.email = "kmandrup@gmail.com"
|
8
|
+
gem.homepage = "http://github.com/kristianmandrup/devise-assistant"
|
9
|
+
gem.authors = ["Kristian Mandrup"]
|
10
|
+
|
11
|
+
gem.add_development_dependency "rspec", "~> 2.0.0.beta.22"
|
12
|
+
gem.add_development_dependency "generator-spec", "~> 0.6.4"
|
13
|
+
gem.add_development_dependency "rspec-action_view", "~> 0.3.1"
|
14
|
+
gem.add_development_dependency "rails-app-spec", "~> 0.2.13"
|
15
|
+
|
16
|
+
gem.add_dependency "require_all", ">= 1.1.0"
|
17
|
+
|
18
|
+
gem.add_dependency "devise-links", "~> 0.1.1"
|
19
|
+
gem.add_dependency "cancan-rest-links", "~> 0.1.1"
|
20
|
+
gem.add_dependency "cancan-permits", "~> 0.1.1"
|
21
|
+
|
22
|
+
gem.add_dependency "devise", ">= 1.1.2"
|
23
|
+
gem.add_dependency "cancan", "~> 1.3.4"
|
24
|
+
gem.add_dependency "rails", "~> 3.0.0"
|
25
|
+
|
26
|
+
gem.add_dependency "rails3_artifactor", "~> 0.2.4"
|
27
|
+
gem.add_dependency 'logging_assist', "~> 0.1.3"
|
28
|
+
|
29
|
+
gem.add_dependency "r3_plugin_toolbox", "~> 0.3.6"
|
30
|
+
gem.add_dependency "sugar-high", "~> 0.2.10"
|
31
|
+
|
32
|
+
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
33
|
+
|
34
|
+
# add more gem options here
|
35
|
+
end
|
36
|
+
Jeweler::GemcutterTasks.new
|
37
|
+
rescue LoadError
|
38
|
+
puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
|
39
|
+
end
|
40
|
+
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.5.6
|
data/cream.gemspec
ADDED
@@ -0,0 +1,169 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{cream}
|
8
|
+
s.version = "0.5.6"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Kristian Mandrup"]
|
12
|
+
s.date = %q{2010-09-26}
|
13
|
+
s.description = %q{Provides assistance for setting up Session, Role and Permission systems for a Rails 3 app. Support for multiple ORMs}
|
14
|
+
s.email = %q{kmandrup@gmail.com}
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE",
|
17
|
+
"README.markdown"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
".document",
|
21
|
+
".gitignore",
|
22
|
+
".rspec",
|
23
|
+
"Changelog.txt",
|
24
|
+
"Gemfile",
|
25
|
+
"LICENSE",
|
26
|
+
"README.markdown",
|
27
|
+
"Rakefile",
|
28
|
+
"VERSION",
|
29
|
+
"app/views/auth_assist/menu/_admin_login_items.html.erb",
|
30
|
+
"app/views/auth_assist/menu/_login_items.html.erb",
|
31
|
+
"app/views/auth_assist/menu/_registration_items.html.erb",
|
32
|
+
"config/locales/en.yml",
|
33
|
+
"cream.gemspec",
|
34
|
+
"features/FEATURE_NOTES.txt",
|
35
|
+
"features/permission/adds_permission.feature",
|
36
|
+
"features/role_strategy/adds_role_strategy.feature",
|
37
|
+
"features/role_strategy/clears_role_strategy.feature",
|
38
|
+
"init.rb",
|
39
|
+
"lib/cream.rb",
|
40
|
+
"lib/cream/configure.rb",
|
41
|
+
"lib/cream/configure/after_init/role_config.rb",
|
42
|
+
"lib/cream/configure/rails.rb",
|
43
|
+
"lib/cream/controller/ability.rb",
|
44
|
+
"lib/cream/helper/authlabels.rb",
|
45
|
+
"lib/cream/helper/host.rb",
|
46
|
+
"lib/cream/helper/role.rb",
|
47
|
+
"lib/cream/namespaces.rb",
|
48
|
+
"lib/cream/role.rb",
|
49
|
+
"lib/cream/view/host_area.rb",
|
50
|
+
"lib/cream/view/role_area.rb",
|
51
|
+
"lib/cream/view/user_action_menu.rb",
|
52
|
+
"lib/generators/cream/config/DESIGN NOTES.markdown",
|
53
|
+
"lib/generators/cream/config/config_generator.rb",
|
54
|
+
"lib/generators/cream/config/modules/cancan_config.rb",
|
55
|
+
"lib/generators/cream/config/modules/cream_config.rb",
|
56
|
+
"lib/generators/cream/config/modules/devise_config.rb",
|
57
|
+
"lib/generators/cream/config/modules/helper.rb",
|
58
|
+
"lib/generators/cream/config/modules/permits_config.rb",
|
59
|
+
"lib/generators/cream/config/modules/roles_config.rb",
|
60
|
+
"lib/generators/cream/views/haml_util.rb",
|
61
|
+
"lib/generators/cream/views/views_generator.rb",
|
62
|
+
"lib/generators/cream_refactor.rb",
|
63
|
+
"log/development.log",
|
64
|
+
"sandbox/test.rb",
|
65
|
+
"spec/cream/configure/rails_spec.rb",
|
66
|
+
"spec/cream/helper/host_spec.rb",
|
67
|
+
"spec/cream/helper/role_spec.rb",
|
68
|
+
"spec/cream/view/host_area_spec.rb",
|
69
|
+
"spec/cream/view/role_area_spec.rb",
|
70
|
+
"spec/cream/view/role_ext_spec.rb",
|
71
|
+
"spec/generator_spec_helper.rb",
|
72
|
+
"spec/generators/cream/config/devise/existing_devise_users.rb",
|
73
|
+
"spec/generators/cream/config/empty_app/default_args_spec.rb",
|
74
|
+
"spec/generators/cream/config/permits/existing_permits_spec.rb",
|
75
|
+
"spec/generators/cream/config/permits/no_permits_spec.rb",
|
76
|
+
"spec/generators/cream/config/roles/default_roles.rb",
|
77
|
+
"spec/generators/cream/config/roles/roles_spec.rb",
|
78
|
+
"spec/generators/cream/shared_examples.rb",
|
79
|
+
"spec/generators/cream/views_generator_spec.rb",
|
80
|
+
"spec/spec_helper.rb",
|
81
|
+
"wiki/CONFIG_GENERATOR.txt",
|
82
|
+
"wiki/DESIGN.txt",
|
83
|
+
"wiki/INSTALLATION.txt",
|
84
|
+
"wiki/PERMITS.txt",
|
85
|
+
"wiki/ROLE_STRATEGIES.txt",
|
86
|
+
"wiki/SPEC_NOTES.txt",
|
87
|
+
"wiki/VIEWS_GENERATOR.txt",
|
88
|
+
"wiki/VIEW_HELPERS.txt"
|
89
|
+
]
|
90
|
+
s.homepage = %q{http://github.com/kristianmandrup/devise-assistant}
|
91
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
92
|
+
s.require_paths = ["lib"]
|
93
|
+
s.rubygems_version = %q{1.3.7}
|
94
|
+
s.summary = %q{Integrates Devise, Roles and CanCan with Permits for a Rails 3 app}
|
95
|
+
s.test_files = [
|
96
|
+
"spec/cream/configure/rails_spec.rb",
|
97
|
+
"spec/cream/helper/host_spec.rb",
|
98
|
+
"spec/cream/helper/role_spec.rb",
|
99
|
+
"spec/cream/view/host_area_spec.rb",
|
100
|
+
"spec/cream/view/role_area_spec.rb",
|
101
|
+
"spec/cream/view/role_ext_spec.rb",
|
102
|
+
"spec/generator_spec_helper.rb",
|
103
|
+
"spec/generators/cream/config/devise/existing_devise_users.rb",
|
104
|
+
"spec/generators/cream/config/empty_app/default_args_spec.rb",
|
105
|
+
"spec/generators/cream/config/permits/existing_permits_spec.rb",
|
106
|
+
"spec/generators/cream/config/permits/no_permits_spec.rb",
|
107
|
+
"spec/generators/cream/config/roles/default_roles.rb",
|
108
|
+
"spec/generators/cream/config/roles/roles_spec.rb",
|
109
|
+
"spec/generators/cream/shared_examples.rb",
|
110
|
+
"spec/generators/cream/views_generator_spec.rb",
|
111
|
+
"spec/spec_helper.rb"
|
112
|
+
]
|
113
|
+
|
114
|
+
if s.respond_to? :specification_version then
|
115
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
116
|
+
s.specification_version = 3
|
117
|
+
|
118
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
119
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.0.0.beta.22"])
|
120
|
+
s.add_development_dependency(%q<generator-spec>, ["~> 0.6.4"])
|
121
|
+
s.add_development_dependency(%q<rspec-action_view>, ["~> 0.3.1"])
|
122
|
+
s.add_development_dependency(%q<rails-app-spec>, ["~> 0.2.13"])
|
123
|
+
s.add_runtime_dependency(%q<require_all>, [">= 1.1.0"])
|
124
|
+
s.add_runtime_dependency(%q<devise-links>, ["~> 0.1.1"])
|
125
|
+
s.add_runtime_dependency(%q<cancan-rest-links>, ["~> 0.1.1"])
|
126
|
+
s.add_runtime_dependency(%q<cancan-permits>, ["~> 0.1.1"])
|
127
|
+
s.add_runtime_dependency(%q<devise>, [">= 1.1.2"])
|
128
|
+
s.add_runtime_dependency(%q<cancan>, ["~> 1.3.4"])
|
129
|
+
s.add_runtime_dependency(%q<rails>, ["~> 3.0.0"])
|
130
|
+
s.add_runtime_dependency(%q<rails3_artifactor>, ["~> 0.2.4"])
|
131
|
+
s.add_runtime_dependency(%q<logging_assist>, ["~> 0.1.3"])
|
132
|
+
s.add_runtime_dependency(%q<r3_plugin_toolbox>, ["~> 0.3.6"])
|
133
|
+
s.add_runtime_dependency(%q<sugar-high>, ["~> 0.2.10"])
|
134
|
+
else
|
135
|
+
s.add_dependency(%q<rspec>, ["~> 2.0.0.beta.22"])
|
136
|
+
s.add_dependency(%q<generator-spec>, ["~> 0.6.4"])
|
137
|
+
s.add_dependency(%q<rspec-action_view>, ["~> 0.3.1"])
|
138
|
+
s.add_dependency(%q<rails-app-spec>, ["~> 0.2.13"])
|
139
|
+
s.add_dependency(%q<require_all>, [">= 1.1.0"])
|
140
|
+
s.add_dependency(%q<devise-links>, ["~> 0.1.1"])
|
141
|
+
s.add_dependency(%q<cancan-rest-links>, ["~> 0.1.1"])
|
142
|
+
s.add_dependency(%q<cancan-permits>, ["~> 0.1.1"])
|
143
|
+
s.add_dependency(%q<devise>, [">= 1.1.2"])
|
144
|
+
s.add_dependency(%q<cancan>, ["~> 1.3.4"])
|
145
|
+
s.add_dependency(%q<rails>, ["~> 3.0.0"])
|
146
|
+
s.add_dependency(%q<rails3_artifactor>, ["~> 0.2.4"])
|
147
|
+
s.add_dependency(%q<logging_assist>, ["~> 0.1.3"])
|
148
|
+
s.add_dependency(%q<r3_plugin_toolbox>, ["~> 0.3.6"])
|
149
|
+
s.add_dependency(%q<sugar-high>, ["~> 0.2.10"])
|
150
|
+
end
|
151
|
+
else
|
152
|
+
s.add_dependency(%q<rspec>, ["~> 2.0.0.beta.22"])
|
153
|
+
s.add_dependency(%q<generator-spec>, ["~> 0.6.4"])
|
154
|
+
s.add_dependency(%q<rspec-action_view>, ["~> 0.3.1"])
|
155
|
+
s.add_dependency(%q<rails-app-spec>, ["~> 0.2.13"])
|
156
|
+
s.add_dependency(%q<require_all>, [">= 1.1.0"])
|
157
|
+
s.add_dependency(%q<devise-links>, ["~> 0.1.1"])
|
158
|
+
s.add_dependency(%q<cancan-rest-links>, ["~> 0.1.1"])
|
159
|
+
s.add_dependency(%q<cancan-permits>, ["~> 0.1.1"])
|
160
|
+
s.add_dependency(%q<devise>, [">= 1.1.2"])
|
161
|
+
s.add_dependency(%q<cancan>, ["~> 1.3.4"])
|
162
|
+
s.add_dependency(%q<rails>, ["~> 3.0.0"])
|
163
|
+
s.add_dependency(%q<rails3_artifactor>, ["~> 0.2.4"])
|
164
|
+
s.add_dependency(%q<logging_assist>, ["~> 0.1.3"])
|
165
|
+
s.add_dependency(%q<r3_plugin_toolbox>, ["~> 0.3.6"])
|
166
|
+
s.add_dependency(%q<sugar-high>, ["~> 0.2.10"])
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|