devbootsrap 0.0.1

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.
Files changed (219) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +31 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +1 -0
  7. data/app/controllers/devise/confirmations_controller.rb +47 -0
  8. data/app/controllers/devise/omniauth_callbacks_controller.rb +30 -0
  9. data/app/controllers/devise/passwords_controller.rb +70 -0
  10. data/app/controllers/devise/registrations_controller.rb +137 -0
  11. data/app/controllers/devise/sessions_controller.rb +53 -0
  12. data/app/controllers/devise/unlocks_controller.rb +46 -0
  13. data/app/controllers/devise_controller.rb +176 -0
  14. data/app/helpers/devise_helper.rb +25 -0
  15. data/app/mailers/devise/mailer.rb +20 -0
  16. data/app/views/devise/confirmations/new.html.erb +12 -0
  17. data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
  18. data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
  19. data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
  20. data/app/views/devise/passwords/edit.html.erb +16 -0
  21. data/app/views/devise/passwords/new.html.erb +12 -0
  22. data/app/views/devise/registrations/edit.html.erb +29 -0
  23. data/app/views/devise/registrations/new.html.erb +18 -0
  24. data/app/views/devise/sessions/new.html.erb +17 -0
  25. data/app/views/devise/shared/_links.erb +25 -0
  26. data/app/views/devise/unlocks/new.html.erb +12 -0
  27. data/config/locales/en.yml +59 -0
  28. data/devbootsrap.gemspec +29 -0
  29. data/gemfiles/Gemfile.rails-3.2-stable +29 -0
  30. data/gemfiles/Gemfile.rails-4.0-stable +29 -0
  31. data/gemfiles/Gemfile.rails-head +29 -0
  32. data/lib/devbootsrap.rb +5 -0
  33. data/lib/devbootsrap/version.rb +3 -0
  34. data/lib/devise.rb +491 -0
  35. data/lib/devise/controllers/helpers.rb +213 -0
  36. data/lib/devise/controllers/rememberable.rb +47 -0
  37. data/lib/devise/controllers/scoped_views.rb +17 -0
  38. data/lib/devise/controllers/sign_in_out.rb +103 -0
  39. data/lib/devise/controllers/store_location.rb +50 -0
  40. data/lib/devise/controllers/url_helpers.rb +67 -0
  41. data/lib/devise/delegator.rb +16 -0
  42. data/lib/devise/failure_app.rb +205 -0
  43. data/lib/devise/hooks/activatable.rb +11 -0
  44. data/lib/devise/hooks/csrf_cleaner.rb +5 -0
  45. data/lib/devise/hooks/forgetable.rb +9 -0
  46. data/lib/devise/hooks/lockable.rb +7 -0
  47. data/lib/devise/hooks/proxy.rb +21 -0
  48. data/lib/devise/hooks/rememberable.rb +7 -0
  49. data/lib/devise/hooks/timeoutable.rb +28 -0
  50. data/lib/devise/hooks/trackable.rb +9 -0
  51. data/lib/devise/mailers/helpers.rb +90 -0
  52. data/lib/devise/mapping.rb +172 -0
  53. data/lib/devise/models.rb +119 -0
  54. data/lib/devise/models/authenticatable.rb +284 -0
  55. data/lib/devise/models/confirmable.rb +295 -0
  56. data/lib/devise/models/database_authenticatable.rb +164 -0
  57. data/lib/devise/models/lockable.rb +196 -0
  58. data/lib/devise/models/omniauthable.rb +27 -0
  59. data/lib/devise/models/recoverable.rb +131 -0
  60. data/lib/devise/models/registerable.rb +25 -0
  61. data/lib/devise/models/rememberable.rb +129 -0
  62. data/lib/devise/models/timeoutable.rb +49 -0
  63. data/lib/devise/models/trackable.rb +35 -0
  64. data/lib/devise/models/validatable.rb +66 -0
  65. data/lib/devise/modules.rb +28 -0
  66. data/lib/devise/omniauth.rb +28 -0
  67. data/lib/devise/omniauth/config.rb +45 -0
  68. data/lib/devise/omniauth/url_helpers.rb +18 -0
  69. data/lib/devise/orm/active_record.rb +3 -0
  70. data/lib/devise/orm/mongoid.rb +3 -0
  71. data/lib/devise/parameter_filter.rb +40 -0
  72. data/lib/devise/parameter_sanitizer.rb +99 -0
  73. data/lib/devise/rails.rb +56 -0
  74. data/lib/devise/rails/routes.rb +496 -0
  75. data/lib/devise/rails/warden_compat.rb +22 -0
  76. data/lib/devise/strategies/authenticatable.rb +167 -0
  77. data/lib/devise/strategies/base.rb +20 -0
  78. data/lib/devise/strategies/database_authenticatable.rb +23 -0
  79. data/lib/devise/strategies/rememberable.rb +55 -0
  80. data/lib/devise/test_helpers.rb +132 -0
  81. data/lib/devise/time_inflector.rb +14 -0
  82. data/lib/devise/token_generator.rb +70 -0
  83. data/lib/devise/version.rb +3 -0
  84. data/lib/generators/active_record/devise_generator.rb +73 -0
  85. data/lib/generators/active_record/templates/migration.rb +18 -0
  86. data/lib/generators/active_record/templates/migration_existing.rb +25 -0
  87. data/lib/generators/devise/devise_generator.rb +26 -0
  88. data/lib/generators/devise/install_generator.rb +29 -0
  89. data/lib/generators/devise/orm_helpers.rb +51 -0
  90. data/lib/generators/devise/views_generator.rb +135 -0
  91. data/lib/generators/mongoid/devise_generator.rb +55 -0
  92. data/lib/generators/templates/README +35 -0
  93. data/lib/generators/templates/devise.rb +260 -0
  94. data/lib/generators/templates/markerb/confirmation_instructions.markerb +5 -0
  95. data/lib/generators/templates/markerb/reset_password_instructions.markerb +8 -0
  96. data/lib/generators/templates/markerb/unlock_instructions.markerb +7 -0
  97. data/lib/generators/templates/simple_form_for/confirmations/new.html.erb +16 -0
  98. data/lib/generators/templates/simple_form_for/passwords/edit.html.erb +19 -0
  99. data/lib/generators/templates/simple_form_for/passwords/new.html.erb +15 -0
  100. data/lib/generators/templates/simple_form_for/registrations/edit.html.erb +27 -0
  101. data/lib/generators/templates/simple_form_for/registrations/new.html.erb +17 -0
  102. data/lib/generators/templates/simple_form_for/sessions/new.html.erb +15 -0
  103. data/lib/generators/templates/simple_form_for/unlocks/new.html.erb +16 -0
  104. data/test/controllers/custom_registrations_controller_test.rb +35 -0
  105. data/test/controllers/custom_strategy_test.rb +62 -0
  106. data/test/controllers/helpers_test.rb +276 -0
  107. data/test/controllers/internal_helpers_test.rb +123 -0
  108. data/test/controllers/passwords_controller_test.rb +31 -0
  109. data/test/controllers/sessions_controller_test.rb +103 -0
  110. data/test/controllers/url_helpers_test.rb +59 -0
  111. data/test/delegator_test.rb +19 -0
  112. data/test/devise_test.rb +94 -0
  113. data/test/failure_app_test.rb +232 -0
  114. data/test/generators/active_record_generator_test.rb +103 -0
  115. data/test/generators/devise_generator_test.rb +39 -0
  116. data/test/generators/install_generator_test.rb +13 -0
  117. data/test/generators/mongoid_generator_test.rb +23 -0
  118. data/test/generators/views_generator_test.rb +96 -0
  119. data/test/helpers/devise_helper_test.rb +51 -0
  120. data/test/integration/authenticatable_test.rb +713 -0
  121. data/test/integration/confirmable_test.rb +284 -0
  122. data/test/integration/database_authenticatable_test.rb +84 -0
  123. data/test/integration/http_authenticatable_test.rb +105 -0
  124. data/test/integration/lockable_test.rb +239 -0
  125. data/test/integration/omniauthable_test.rb +133 -0
  126. data/test/integration/recoverable_test.rb +334 -0
  127. data/test/integration/registerable_test.rb +349 -0
  128. data/test/integration/rememberable_test.rb +167 -0
  129. data/test/integration/timeoutable_test.rb +183 -0
  130. data/test/integration/trackable_test.rb +92 -0
  131. data/test/mailers/confirmation_instructions_test.rb +115 -0
  132. data/test/mailers/reset_password_instructions_test.rb +96 -0
  133. data/test/mailers/unlock_instructions_test.rb +91 -0
  134. data/test/mapping_test.rb +127 -0
  135. data/test/models/authenticatable_test.rb +13 -0
  136. data/test/models/confirmable_test.rb +454 -0
  137. data/test/models/database_authenticatable_test.rb +249 -0
  138. data/test/models/lockable_test.rb +316 -0
  139. data/test/models/omniauthable_test.rb +7 -0
  140. data/test/models/recoverable_test.rb +184 -0
  141. data/test/models/registerable_test.rb +7 -0
  142. data/test/models/rememberable_test.rb +183 -0
  143. data/test/models/serializable_test.rb +49 -0
  144. data/test/models/timeoutable_test.rb +51 -0
  145. data/test/models/trackable_test.rb +13 -0
  146. data/test/models/validatable_test.rb +127 -0
  147. data/test/models_test.rb +144 -0
  148. data/test/omniauth/config_test.rb +57 -0
  149. data/test/omniauth/url_helpers_test.rb +54 -0
  150. data/test/orm/active_record.rb +10 -0
  151. data/test/orm/mongoid.rb +13 -0
  152. data/test/parameter_sanitizer_test.rb +81 -0
  153. data/test/rails_app/Rakefile +6 -0
  154. data/test/rails_app/app/active_record/admin.rb +6 -0
  155. data/test/rails_app/app/active_record/shim.rb +2 -0
  156. data/test/rails_app/app/active_record/user.rb +6 -0
  157. data/test/rails_app/app/controllers/admins/sessions_controller.rb +6 -0
  158. data/test/rails_app/app/controllers/admins_controller.rb +11 -0
  159. data/test/rails_app/app/controllers/application_controller.rb +9 -0
  160. data/test/rails_app/app/controllers/custom/registrations_controller.rb +21 -0
  161. data/test/rails_app/app/controllers/home_controller.rb +25 -0
  162. data/test/rails_app/app/controllers/publisher/registrations_controller.rb +2 -0
  163. data/test/rails_app/app/controllers/publisher/sessions_controller.rb +2 -0
  164. data/test/rails_app/app/controllers/users/omniauth_callbacks_controller.rb +14 -0
  165. data/test/rails_app/app/controllers/users_controller.rb +31 -0
  166. data/test/rails_app/app/helpers/application_helper.rb +3 -0
  167. data/test/rails_app/app/mailers/users/mailer.rb +12 -0
  168. data/test/rails_app/app/mongoid/admin.rb +29 -0
  169. data/test/rails_app/app/mongoid/shim.rb +23 -0
  170. data/test/rails_app/app/mongoid/user.rb +39 -0
  171. data/test/rails_app/app/views/admins/index.html.erb +1 -0
  172. data/test/rails_app/app/views/admins/sessions/new.html.erb +2 -0
  173. data/test/rails_app/app/views/home/admin_dashboard.html.erb +1 -0
  174. data/test/rails_app/app/views/home/index.html.erb +1 -0
  175. data/test/rails_app/app/views/home/join.html.erb +1 -0
  176. data/test/rails_app/app/views/home/private.html.erb +1 -0
  177. data/test/rails_app/app/views/home/user_dashboard.html.erb +1 -0
  178. data/test/rails_app/app/views/layouts/application.html.erb +24 -0
  179. data/test/rails_app/app/views/users/edit_form.html.erb +1 -0
  180. data/test/rails_app/app/views/users/index.html.erb +1 -0
  181. data/test/rails_app/app/views/users/mailer/confirmation_instructions.erb +1 -0
  182. data/test/rails_app/app/views/users/sessions/new.html.erb +1 -0
  183. data/test/rails_app/bin/bundle +3 -0
  184. data/test/rails_app/bin/rails +4 -0
  185. data/test/rails_app/bin/rake +4 -0
  186. data/test/rails_app/config.ru +4 -0
  187. data/test/rails_app/config/application.rb +40 -0
  188. data/test/rails_app/config/boot.rb +14 -0
  189. data/test/rails_app/config/database.yml +18 -0
  190. data/test/rails_app/config/environment.rb +5 -0
  191. data/test/rails_app/config/environments/development.rb +30 -0
  192. data/test/rails_app/config/environments/production.rb +80 -0
  193. data/test/rails_app/config/environments/test.rb +36 -0
  194. data/test/rails_app/config/initializers/backtrace_silencers.rb +7 -0
  195. data/test/rails_app/config/initializers/devise.rb +181 -0
  196. data/test/rails_app/config/initializers/inflections.rb +2 -0
  197. data/test/rails_app/config/initializers/secret_token.rb +8 -0
  198. data/test/rails_app/config/initializers/session_store.rb +1 -0
  199. data/test/rails_app/config/routes.rb +108 -0
  200. data/test/rails_app/db/migrate/20100401102949_create_tables.rb +71 -0
  201. data/test/rails_app/db/schema.rb +55 -0
  202. data/test/rails_app/lib/shared_admin.rb +17 -0
  203. data/test/rails_app/lib/shared_user.rb +29 -0
  204. data/test/rails_app/public/404.html +26 -0
  205. data/test/rails_app/public/422.html +26 -0
  206. data/test/rails_app/public/500.html +26 -0
  207. data/test/rails_app/public/favicon.ico +0 -0
  208. data/test/routes_test.rb +262 -0
  209. data/test/support/action_controller/record_identifier.rb +10 -0
  210. data/test/support/assertions.rb +40 -0
  211. data/test/support/helpers.rb +70 -0
  212. data/test/support/integration.rb +92 -0
  213. data/test/support/locale/en.yml +8 -0
  214. data/test/support/mongoid.yml +6 -0
  215. data/test/support/webrat/integrations/rails.rb +24 -0
  216. data/test/test_helper.rb +27 -0
  217. data/test/test_helpers_test.rb +173 -0
  218. data/test/test_models.rb +33 -0
  219. metadata +480 -0
@@ -0,0 +1,6 @@
1
+ # Add your own tasks in files placed in lib/tasks ending in .rake,
2
+ # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3
+
4
+ require File.expand_path('../config/application', __FILE__)
5
+
6
+ Rails.application.load_tasks
@@ -0,0 +1,6 @@
1
+ require 'shared_admin'
2
+
3
+ class Admin < ActiveRecord::Base
4
+ include Shim
5
+ include SharedAdmin
6
+ end
@@ -0,0 +1,2 @@
1
+ module Shim
2
+ end
@@ -0,0 +1,6 @@
1
+ require 'shared_user'
2
+
3
+ class User < ActiveRecord::Base
4
+ include Shim
5
+ include SharedUser
6
+ end
@@ -0,0 +1,6 @@
1
+ class Admins::SessionsController < Devise::SessionsController
2
+ def new
3
+ flash[:special] = "Welcome to #{controller_path.inspect} controller!"
4
+ super
5
+ end
6
+ end
@@ -0,0 +1,11 @@
1
+ class AdminsController < ApplicationController
2
+ before_filter :authenticate_admin!
3
+
4
+ def index
5
+ end
6
+
7
+ def expire
8
+ admin_session['last_request_at'] = 31.minutes.ago.utc
9
+ render text: 'Admin will be expired on next request'
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ # Filters added to this controller apply to all controllers in the application.
2
+ # Likewise, all the methods added will be available for all controllers.
3
+
4
+ class ApplicationController < ActionController::Base
5
+ protect_from_forgery
6
+ before_filter :current_user, unless: :devise_controller?
7
+ before_filter :authenticate_user!, if: :devise_controller?
8
+ respond_to *Mime::SET.map(&:to_sym)
9
+ end
@@ -0,0 +1,21 @@
1
+ class Custom::RegistrationsController < Devise::RegistrationsController
2
+ def create
3
+ super do |resource|
4
+ @create_block_called = true
5
+ end
6
+ end
7
+
8
+ def update
9
+ super do |resource|
10
+ @update_block_called = true
11
+ end
12
+ end
13
+
14
+ def create_block_called?
15
+ @create_block_called == true
16
+ end
17
+
18
+ def update_block_called?
19
+ @update_block_called == true
20
+ end
21
+ end
@@ -0,0 +1,25 @@
1
+ class HomeController < ApplicationController
2
+ def index
3
+ end
4
+
5
+ def private
6
+ end
7
+
8
+ def user_dashboard
9
+ end
10
+
11
+ def admin_dashboard
12
+ end
13
+
14
+ def join
15
+ end
16
+
17
+ def set
18
+ session["devise.foo_bar"] = "something"
19
+ head :ok
20
+ end
21
+
22
+ def unauthenticated
23
+ render text: "unauthenticated", status: :unauthorized
24
+ end
25
+ end
@@ -0,0 +1,2 @@
1
+ class Publisher::RegistrationsController < ApplicationController
2
+ end
@@ -0,0 +1,2 @@
1
+ class Publisher::SessionsController < ApplicationController
2
+ end
@@ -0,0 +1,14 @@
1
+ class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
2
+ def facebook
3
+ data = env["omniauth.auth"]
4
+ session["devise.facebook_data"] = data["extra"]["user_hash"]
5
+ render json: data
6
+ end
7
+
8
+ def sign_in_facebook
9
+ user = User.find_by_email('user@test.com')
10
+ user.remember_me = true
11
+ sign_in user
12
+ render text: ""
13
+ end
14
+ end
@@ -0,0 +1,31 @@
1
+ class UsersController < ApplicationController
2
+ prepend_before_filter :current_user, only: :exhibit
3
+ before_filter :authenticate_user!, except: [:accept, :exhibit]
4
+ respond_to :html, :xml
5
+
6
+ def index
7
+ user_session[:cart] = "Cart"
8
+ respond_with(current_user)
9
+ end
10
+
11
+ def edit_form
12
+ user_session['last_request_at'] = 31.minutes.ago.utc
13
+ end
14
+
15
+ def update_form
16
+ render text: 'Update'
17
+ end
18
+
19
+ def accept
20
+ @current_user = current_user
21
+ end
22
+
23
+ def exhibit
24
+ render text: current_user ? "User is authenticated" : "User is not authenticated"
25
+ end
26
+
27
+ def expire
28
+ user_session['last_request_at'] = 31.minutes.ago.utc
29
+ render text: 'User will be expired on next request'
30
+ end
31
+ end
@@ -0,0 +1,3 @@
1
+ # Methods added to this helper will be available to all templates in the application.
2
+ module ApplicationHelper
3
+ end
@@ -0,0 +1,12 @@
1
+ class Users::Mailer < Devise::Mailer
2
+ default from: 'custom@example.com'
3
+ end
4
+
5
+ class Users::ReplyToMailer < Devise::Mailer
6
+ default from: 'custom@example.com'
7
+ default reply_to: 'custom_reply_to@example.com'
8
+ end
9
+
10
+ class Users::FromProcMailer < Devise::Mailer
11
+ default from: proc { 'custom@example.com' }
12
+ end
@@ -0,0 +1,29 @@
1
+ require 'shared_admin'
2
+
3
+ class Admin
4
+ include Mongoid::Document
5
+ include Shim
6
+ include SharedAdmin
7
+
8
+ ## Database authenticatable
9
+ field :email, type: String
10
+ field :encrypted_password, type: String
11
+
12
+ ## Recoverable
13
+ field :reset_password_token, type: String
14
+ field :reset_password_sent_at, type: Time
15
+
16
+ ## Rememberable
17
+ field :remember_created_at, type: Time
18
+
19
+ ## Confirmable
20
+ field :confirmation_token, type: String
21
+ field :confirmed_at, type: Time
22
+ field :confirmation_sent_at, type: Time
23
+ field :unconfirmed_email, type: String # Only if using reconfirmable
24
+
25
+ ## Lockable
26
+ field :locked_at, type: Time
27
+
28
+ field :active, type: Boolean, default: false
29
+ end
@@ -0,0 +1,23 @@
1
+ module Shim
2
+ extend ::ActiveSupport::Concern
3
+
4
+ included do
5
+ include ::Mongoid::Timestamps
6
+ field :created_at, type: DateTime
7
+ end
8
+
9
+ module ClassMethods
10
+ def order(attribute)
11
+ asc(attribute)
12
+ end
13
+
14
+ def find_by_email(email)
15
+ find_by(email: email)
16
+ end
17
+ end
18
+
19
+ # overwrite equality (because some devise tests use this for asserting model equality)
20
+ def ==(other)
21
+ other.is_a?(self.class) && _id == other._id
22
+ end
23
+ end
@@ -0,0 +1,39 @@
1
+ require 'shared_user'
2
+
3
+ class User
4
+ include Mongoid::Document
5
+ include Shim
6
+ include SharedUser
7
+
8
+ field :username, type: String
9
+ field :facebook_token, type: String
10
+
11
+ ## Database authenticatable
12
+ field :email, type: String, default: ""
13
+ field :encrypted_password, type: String, default: ""
14
+
15
+ ## Recoverable
16
+ field :reset_password_token, type: String
17
+ field :reset_password_sent_at, type: Time
18
+
19
+ ## Rememberable
20
+ field :remember_created_at, type: Time
21
+
22
+ ## Trackable
23
+ field :sign_in_count, type: Integer, default: 0
24
+ field :current_sign_in_at, type: Time
25
+ field :last_sign_in_at, type: Time
26
+ field :current_sign_in_ip, type: String
27
+ field :last_sign_in_ip, type: String
28
+
29
+ ## Confirmable
30
+ field :confirmation_token, type: String
31
+ field :confirmed_at, type: Time
32
+ field :confirmation_sent_at, type: Time
33
+ # field :unconfirmed_email, type: String # Only if using reconfirmable
34
+
35
+ ## Lockable
36
+ field :failed_attempts, type: Integer, default: 0 # Only if lock strategy is :failed_attempts
37
+ field :unlock_token, type: String # Only if unlock strategy is :email or :both
38
+ field :locked_at, type: Time
39
+ end
@@ -0,0 +1 @@
1
+ Welcome Admin!
@@ -0,0 +1,2 @@
1
+ Welcome to "sessions/new" view!
2
+ <%= render file: "devise/sessions/new" %>
@@ -0,0 +1 @@
1
+ Admin dashboard
@@ -0,0 +1 @@
1
+ Home!
@@ -0,0 +1 @@
1
+ Join
@@ -0,0 +1 @@
1
+ Private!
@@ -0,0 +1 @@
1
+ User dashboard
@@ -0,0 +1,24 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html>
4
+ <head>
5
+ <title>Devise Test App</title>
6
+ </head>
7
+ <body>
8
+ <div id="container">
9
+ <%- flash.each do |name, msg| -%>
10
+ <%= content_tag :div, msg, id: "flash_#{name}" %>
11
+ <%- end -%>
12
+
13
+ <% if user_signed_in? -%>
14
+ <p>Hello User <%= current_user.email %>! You are signed in!</p>
15
+ <% end -%>
16
+
17
+ <% if admin_signed_in? -%>
18
+ <p>Hello Admin <%= current_admin.email %>! You are signed in!</p>
19
+ <% end -%>
20
+
21
+ <%= yield %>
22
+ </div>
23
+ </body>
24
+ </html>
@@ -0,0 +1 @@
1
+ <%= button_to 'Update', update_form_user_path(current_user), method: 'put' %>
@@ -0,0 +1 @@
1
+ Welcome User #<%= current_user.id %>!
@@ -0,0 +1 @@
1
+ <%= @resource.email %>
@@ -0,0 +1 @@
1
+ Special user view
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3
+ load Gem.bin_path('bundler', 'bundle')
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
3
+ require_relative '../config/boot'
4
+ require 'rails/commands'
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative '../config/boot'
3
+ require 'rake'
4
+ Rake.application.run
@@ -0,0 +1,4 @@
1
+ # This file is used by Rack-based servers to start the application.
2
+
3
+ require ::File.expand_path('../config/environment', __FILE__)
4
+ run RailsApp::Application
@@ -0,0 +1,40 @@
1
+ require File.expand_path('../boot', __FILE__)
2
+
3
+ require "action_controller/railtie"
4
+ require "action_mailer/railtie"
5
+ require "rails/test_unit/railtie"
6
+
7
+ Bundler.require :default, DEVISE_ORM
8
+
9
+ begin
10
+ require "#{DEVISE_ORM}/railtie"
11
+ rescue LoadError
12
+ end
13
+
14
+ require "devise"
15
+
16
+ module RailsApp
17
+ class Application < Rails::Application
18
+ # Add additional load paths for your own custom dirs
19
+ config.autoload_paths.reject!{ |p| p =~ /\/app\/(\w+)$/ && !%w(controllers helpers mailers views).include?($1) }
20
+ config.autoload_paths += [ "#{config.root}/app/#{DEVISE_ORM}" ]
21
+
22
+ # Configure generators values. Many other options are available, be sure to check the documentation.
23
+ # config.generators do |g|
24
+ # g.orm :active_record
25
+ # g.template_engine :erb
26
+ # g.test_framework :test_unit, fixture: true
27
+ # end
28
+
29
+ # Configure sensitive parameters which will be filtered from the log file.
30
+ config.filter_parameters << :password
31
+ config.assets.enabled = false
32
+
33
+ config.action_mailer.default_url_options = { host: "localhost:3000" }
34
+
35
+ # This was used to break devise in some situations
36
+ config.to_prepare do
37
+ Devise::SessionsController.layout "application"
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,14 @@
1
+ unless defined?(DEVISE_ORM)
2
+ DEVISE_ORM = (ENV["DEVISE_ORM"] || :active_record).to_sym
3
+ end
4
+
5
+ module Devise
6
+ # Detection for minor differences between Rails 3.2 and 4 in tests.
7
+ def self.rails4?
8
+ Rails.version.start_with? '4'
9
+ end
10
+ end
11
+
12
+ # Set up gems listed in the Gemfile.
13
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../../Gemfile', __FILE__)
14
+ require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE'])
@@ -0,0 +1,18 @@
1
+ # SQLite version 3.x
2
+ # gem install sqlite3-ruby (not necessary on OS X Leopard)
3
+ development:
4
+ adapter: sqlite3
5
+ database: db/development.sqlite3
6
+ pool: 5
7
+ timeout: 5000
8
+
9
+ # Warning: The database defined as "test" will be erased and
10
+ # re-generated from your development database when you run "rake".
11
+ # Do not set this db to the same as development or production.
12
+ test:
13
+ adapter: sqlite3
14
+ database: ":memory:"
15
+
16
+ production:
17
+ adapter: sqlite3
18
+ database: ":memory:"