message_train 0.5.2 → 0.5.3

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 (161) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +20 -0
  3. data/.ruby-gemset +1 -1
  4. data/.scss-lint.yml +7 -0
  5. data/.simplecov +1 -1
  6. data/.travis.yml +1 -1
  7. data/Gemfile +6 -2
  8. data/LICENSE.txt +2 -2
  9. data/README.rdoc +5 -5
  10. data/Rakefile +22 -21
  11. data/VERSION +1 -1
  12. data/app/assets/javascripts/message_train.js +1 -1
  13. data/app/assets/stylesheets/message_train.scss +29 -19
  14. data/app/controllers/concerns/message_train_support.rb +41 -37
  15. data/app/controllers/message_train/application_controller.rb +1 -0
  16. data/app/controllers/message_train/boxes_controller.rb +5 -4
  17. data/app/controllers/message_train/conversations_controller.rb +8 -7
  18. data/app/controllers/message_train/messages_controller.rb +25 -22
  19. data/app/controllers/message_train/participants_controller.rb +27 -23
  20. data/app/controllers/message_train/unsubscribes_controller.rb +37 -23
  21. data/app/helpers/message_train/application_helper.rb +6 -8
  22. data/app/helpers/message_train/attachments_helper.rb +12 -4
  23. data/app/helpers/message_train/boxes_helper.rb +38 -11
  24. data/app/helpers/message_train/collectives_helper.rb +38 -12
  25. data/app/helpers/message_train/conversations_helper.rb +43 -35
  26. data/app/helpers/message_train/messages_helper.rb +32 -25
  27. data/app/mailers/message_train/application_mailer.rb +7 -4
  28. data/app/mailers/message_train/previews/receipt_mailer_preview.rb +2 -3
  29. data/app/mailers/message_train/receipt_mailer.rb +14 -4
  30. data/app/models/message_train/attachment.rb +41 -25
  31. data/app/models/message_train/box.rb +159 -122
  32. data/app/models/message_train/conversation.rb +84 -41
  33. data/app/models/message_train/ignore.rb +8 -2
  34. data/app/models/message_train/message.rb +72 -42
  35. data/app/models/message_train/receipt.rb +30 -17
  36. data/app/models/message_train/unsubscribe.rb +1 -0
  37. data/app/views/application/404.html.haml +1 -1
  38. data/app/views/layouts/mailer.html.haml +2 -2
  39. data/app/views/layouts/mailer.text.haml +1 -1
  40. data/app/views/message_train/application/_attachment_fields.html.haml +1 -1
  41. data/app/views/message_train/application/_widget.html.haml +1 -1
  42. data/app/views/message_train/application/results.json.jbuilder +1 -1
  43. data/app/views/message_train/boxes/_dropdown_list.html.haml +1 -1
  44. data/app/views/message_train/boxes/_list_item.html.haml +1 -1
  45. data/app/views/message_train/boxes/show.html.haml +1 -1
  46. data/app/views/message_train/collectives/_dropdown_list.html.haml +1 -1
  47. data/app/views/message_train/collectives/_list_item.html.haml +1 -1
  48. data/app/views/message_train/conversations/_deleted_toggle.html.haml +1 -1
  49. data/app/views/message_train/conversations/_ignored_toggle.html.haml +2 -2
  50. data/app/views/message_train/conversations/_read_toggle.html.haml +1 -1
  51. data/app/views/message_train/conversations/_toggle.html.haml +1 -1
  52. data/app/views/message_train/conversations/_trashed_toggle.html.haml +1 -1
  53. data/app/views/message_train/conversations/show.html.haml +2 -2
  54. data/app/views/message_train/conversations/show.json.jbuilder +5 -1
  55. data/app/views/message_train/messages/_form.html.haml +1 -1
  56. data/app/views/message_train/messages/_message.html.haml +6 -6
  57. data/app/views/message_train/messages/_toggle.html.haml +1 -1
  58. data/app/views/message_train/messages/show.json.jbuilder +5 -1
  59. data/app/views/message_train/participants/_participant.json.jbuilder +1 -1
  60. data/app/views/message_train/participants/index.json.jbuilder +1 -1
  61. data/app/views/message_train/participants/show.json.jbuilder +1 -1
  62. data/app/views/message_train/receipt_mailer/notification_email.html.haml +1 -1
  63. data/app/views/message_train/receipt_mailer/notification_email.text.haml +1 -1
  64. data/app/views/message_train/unsubscribes/index.html.haml +1 -1
  65. data/config/environment.rb +1 -1
  66. data/config/initializers/date_time.rb +2 -2
  67. data/config/locales/en.yml +1 -1
  68. data/config/routes.rb +37 -15
  69. data/lib/generators/message_train/install/install_generator.rb +26 -11
  70. data/lib/generators/message_train/install/templates/initializer.rb +0 -2
  71. data/lib/generators/message_train/utils.rb +11 -4
  72. data/lib/message_train/configuration.rb +4 -5
  73. data/lib/message_train/engine.rb +1 -7
  74. data/lib/message_train/localization.rb +14 -18
  75. data/lib/message_train/mixin.rb +211 -150
  76. data/lib/message_train/version.rb +1 -0
  77. data/lib/message_train.rb +7 -6
  78. data/message_train.gemspec +24 -11
  79. data/spec/controllers/message_train/boxes_controller_spec.rb +63 -15
  80. data/spec/controllers/message_train/concerns_spec.rb +17 -13
  81. data/spec/controllers/message_train/conversations_controller_spec.rb +44 -12
  82. data/spec/controllers/message_train/messages_controller_spec.rb +87 -40
  83. data/spec/controllers/message_train/participants_controller_spec.rb +10 -4
  84. data/spec/controllers/message_train/unsubscribes_controller_spec.rb +43 -13
  85. data/spec/dummy/Rakefile +2 -1
  86. data/spec/dummy/app/assets/stylesheets/application.css.scss +7 -23
  87. data/spec/dummy/app/controllers/application_controller.rb +7 -7
  88. data/spec/dummy/app/models/group.rb +1 -1
  89. data/spec/dummy/app/models/role.rb +11 -7
  90. data/spec/dummy/app/models/user.rb +6 -5
  91. data/spec/dummy/app/views/layouts/_top_navigation.html.haml +1 -1
  92. data/spec/dummy/app/views/layouts/application.html.haml +1 -1
  93. data/spec/dummy/app/views/pages/index.html.haml +1 -1
  94. data/spec/dummy/config/application.rb +23 -17
  95. data/spec/dummy/config/environments/development.rb +5 -4
  96. data/spec/dummy/config/environments/production.rb +10 -6
  97. data/spec/dummy/config/environments/test.rb +4 -3
  98. data/spec/dummy/config/initializers/assets.rb +2 -1
  99. data/spec/dummy/config/initializers/backtrace_silencers.rb +4 -2
  100. data/spec/dummy/config/initializers/bootstrap_leather.rb +1 -1
  101. data/spec/dummy/config/initializers/devise.rb +63 -44
  102. data/spec/dummy/config/initializers/high_voltage.rb +1 -1
  103. data/spec/dummy/config/initializers/message_train.rb +5 -2
  104. data/spec/dummy/config/initializers/mime_types.rb +1 -1
  105. data/spec/dummy/config/initializers/paperclip.rb +5 -2
  106. data/spec/dummy/config/initializers/rolify.rb +3 -2
  107. data/spec/dummy/config/initializers/wrap_parameters.rb +2 -1
  108. data/spec/dummy/config/routes.rb +1 -3
  109. data/spec/dummy/config/settings.yml +1 -1
  110. data/spec/dummy/db/schema.rb +98 -98
  111. data/spec/dummy/db/seeds/conversations.seeds.rb +160 -160
  112. data/spec/dummy/db/seeds/development/conversations.seeds.rb +6 -2
  113. data/spec/dummy/db/seeds/groups.seeds.rb +11 -12
  114. data/spec/dummy/db/seeds/test/attachments.seeds.rb +13 -3
  115. data/spec/dummy/db/seeds/test/conversations.seeds.rb +6 -2
  116. data/spec/dummy/db/seeds/unsubscribes.seeds.rb +1 -1
  117. data/spec/dummy/db/seeds/users.seeds.rb +47 -42
  118. data/spec/dummy/db/test.sqlite3 +0 -0
  119. data/spec/factories/attachment.rb +6 -2
  120. data/spec/factories/group.rb +1 -4
  121. data/spec/factories/message.rb +29 -23
  122. data/spec/factories/user.rb +6 -4
  123. data/spec/features/boxes_spec.rb +76 -24
  124. data/spec/features/conversations_spec.rb +19 -7
  125. data/spec/features/messages_spec.rb +24 -5
  126. data/spec/features/unsubscribes_spec.rb +36 -9
  127. data/spec/helpers/message_train/application_helper_spec.rb +1 -1
  128. data/spec/helpers/message_train/attachment_helper_spec.rb +27 -12
  129. data/spec/helpers/message_train/boxes_helper_spec.rb +1 -1
  130. data/spec/helpers/message_train/collectives_helper_spec.rb +25 -9
  131. data/spec/helpers/message_train/conversations_helper_spec.rb +239 -120
  132. data/spec/helpers/message_train/messages_helper_spec.rb +137 -81
  133. data/spec/message_train_spec.rb +3 -2
  134. data/spec/models/group_spec.rb +12 -9
  135. data/spec/models/message_train/attachment_spec.rb +33 -30
  136. data/spec/models/message_train/box_spec.rb +243 -60
  137. data/spec/models/message_train/conversation_spec.rb +16 -12
  138. data/spec/models/message_train/ignore_spec.rb +3 -1
  139. data/spec/models/message_train/message_spec.rb +22 -7
  140. data/spec/models/message_train/receipt_spec.rb +14 -4
  141. data/spec/models/role_spec.rb +10 -6
  142. data/spec/models/user_spec.rb +74 -22
  143. data/spec/rails_helper.rb +9 -4
  144. data/spec/spec_helper.rb +6 -54
  145. data/spec/support/controller_behaviors.rb +8 -5
  146. data/spec/support/controller_macros.rb +2 -2
  147. data/spec/support/factory_girl.rb +1 -1
  148. data/spec/support/feature_behaviors.rb +42 -13
  149. data/spec/support/loaded_site/attachments.rb +8 -0
  150. data/spec/support/loaded_site/conversations.rb +73 -0
  151. data/spec/support/{groups.rb → loaded_site/groups.rb} +1 -1
  152. data/spec/support/{loaded_site.rb → loaded_site/loaded_site.rb} +1 -1
  153. data/spec/support/{messages.rb → loaded_site/messages.rb} +13 -5
  154. data/spec/support/{roles.rb → loaded_site/roles.rb} +1 -1
  155. data/spec/support/{users.rb → loaded_site/users.rb} +1 -1
  156. data/spec/support/shared_connection.rb +8 -6
  157. data/spec/support/utilities.rb +10 -10
  158. metadata +67 -10
  159. data/spec/dummy/config/unused/temporary_i18n_debugging.rb +0 -12
  160. data/spec/support/attachments.rb +0 -4
  161. data/spec/support/conversations.rb +0 -23
data/spec/dummy/Rakefile CHANGED
@@ -1,5 +1,6 @@
1
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.
2
+ # for example lib/tasks/capistrano.rake, and they will automatically be
3
+ # available to Rake.
3
4
 
4
5
  require File.expand_path('../config/application', __FILE__)
5
6
 
@@ -1,23 +1,7 @@
1
- /*
2
- * This is a manifest file that'll be compiled into application.css, which will include all the files
3
- * listed below.
4
- *
5
- * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
- * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
7
- *
8
- * You're free to add application-wide styles to this file and they'll appear at the bottom of the
9
- * compiled file so the styles you add here take precedence over styles defined in any styles
10
- * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
11
- * file per style scope.
12
- *
13
- *= require_tree .
14
- *= require_self
15
- */
16
-
17
- // "bootstrap-sprockets" must be imported before "bootstrap" and "bootstrap/variables"
18
- @import "bootstrap-sprockets";
19
- @import "bootstrap";
20
- @import "message_train";
1
+ // 'bootstrap-sprockets' must be imported before 'bootstrap' and 'bootstrap/variables'
2
+ @import 'bootstrap-sprockets';
3
+ @import 'bootstrap';
4
+ @import 'message_train';
21
5
 
22
6
  .navbar-header {
23
7
  overflow: hidden;
@@ -29,7 +13,7 @@
29
13
  }
30
14
 
31
15
  .logo {
32
- height: 2em;
33
- margin: -0.5em 1em -0.5em 0;
34
16
  float: left;
35
- }
17
+ height: 2em;
18
+ margin: -.5em 1em -.5em 0;
19
+ }
@@ -1,5 +1,4 @@
1
1
  class ApplicationController < ActionController::Base
2
-
3
2
  include MessageTrain::MessageTrainSupport
4
3
 
5
4
  # Prevent CSRF attacks by raising an exception.
@@ -7,11 +6,12 @@ class ApplicationController < ActionController::Base
7
6
  protect_from_forgery with: :exception
8
7
 
9
8
  private
10
- def after_sign_in_path_for(resource_or_scope)
11
- message_train.box_path(:in)
12
- end
13
9
 
14
- def after_sign_out_path_for(resource_or_scope)
15
- message_train.box_path(:in)
16
- end
10
+ def after_sign_in_path_for(_resource_or_scope)
11
+ message_train.box_path(:in)
12
+ end
13
+
14
+ def after_sign_out_path_for(_resource_or_scope)
15
+ message_train.box_path(:in)
16
+ end
17
17
  end
@@ -31,4 +31,4 @@ class Group < ActiveRecord::Base
31
31
  def self.fallback_address_book(user)
32
32
  Group.with_role(:owner, user)
33
33
  end
34
- end
34
+ end
@@ -1,10 +1,12 @@
1
1
  class Role < ActiveRecord::Base
2
- has_and_belongs_to_many :users, :join_table => :users_roles
3
- belongs_to :resource, :polymorphic => true
2
+ has_and_belongs_to_many :users, join_table: :users_roles
3
+ belongs_to :resource, polymorphic: true
4
4
 
5
- validates :resource_type,
6
- :inclusion => { :in => Rolify.resource_types },
7
- :allow_nil => true
5
+ validates(
6
+ :resource_type,
7
+ inclusion: { in: Rolify.resource_types },
8
+ allow_nil: true
9
+ )
8
10
 
9
11
  scopify
10
12
 
@@ -16,10 +18,12 @@ class Role < ActiveRecord::Base
16
18
  collectives_for_recipient: :sendable_roles,
17
19
  valid_recipients: :recipients
18
20
 
19
- scope :sendable_roles, ->(user) { where(resource: nil).where.not(name: 'superadmin') }
21
+ scope :sendable_roles, (lambda do |_participant|
22
+ where(resource: nil).where.not(name: 'superadmin')
23
+ end)
20
24
 
21
25
  def recipients
22
- User.with_role(self.name.to_sym)
26
+ User.with_role(name.to_sym)
23
27
  end
24
28
 
25
29
  def superadmins
@@ -1,5 +1,3 @@
1
- # require 'group' #TODO This is a hack to get the group model to load in development. Works, but for how long?
2
-
3
1
  class User < ActiveRecord::Base
4
2
  # Rolify Gem
5
3
  rolify
@@ -15,9 +13,12 @@ class User < ActiveRecord::Base
15
13
  :recoverable, :rememberable, :trackable, :validatable
16
14
 
17
15
  # MessageTrain Gem
18
- message_train name_column: :display_name, address_book_method: :valid_recipients_for
16
+ message_train(
17
+ name_column: :display_name,
18
+ address_book_method: :valid_recipients_for
19
+ )
19
20
 
20
- def self.valid_recipients_for(sender)
21
+ def self.valid_recipients_for(_sender)
21
22
  all
22
23
  end
23
- end
24
+ end
@@ -4,4 +4,4 @@
4
4
  = collective_boxes_dropdown_list(current_user)
5
5
  = boxes_dropdown_list(current_user)
6
6
  = nav_item 'Manage Notifications', '/unsubscribes'
7
- = nav_item 'Sign Out', '/users/sign_out', method: :delete
7
+ = nav_item 'Sign Out', '/users/sign_out', method: :delete
@@ -25,4 +25,4 @@
25
25
  = yield
26
26
 
27
27
  %footer
28
- = render_footer_javascript
28
+ = render_footer_javascript
@@ -1,4 +1,4 @@
1
1
  - if user_signed_in?
2
2
  = link_to 'Message Train Application', message_train.box_path(:in)
3
3
  - else
4
- = link_to 'Sign In', new_user_session_path
4
+ = link_to 'Sign In', new_user_session_path
@@ -1,28 +1,33 @@
1
1
  require File.expand_path('../boot', __FILE__)
2
2
 
3
3
  # Pick the frameworks you want:
4
- require "active_record/railtie"
5
- require "action_controller/railtie"
6
- require "action_mailer/railtie"
7
- require "action_view/railtie"
8
- require "sprockets/railtie"
9
- # require "rails/test_unit/railtie"
4
+ require 'active_record/railtie'
5
+ require 'action_controller/railtie'
6
+ require 'action_mailer/railtie'
7
+ require 'action_view/railtie'
8
+ require 'sprockets/railtie'
9
+ # require 'rails/test_unit/railtie'
10
10
 
11
11
  Bundler.require(*Rails.groups)
12
- require "message_train"
12
+ require 'message_train'
13
13
 
14
14
  module Dummy
15
15
  class Application < Rails::Application
16
- # Settings in config/environments/* take precedence over those specified here.
17
- # Application configuration should go into files in config/initializers
18
- # -- all .rb files in that directory are automatically loaded.
19
-
20
- # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
21
- # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
16
+ # Settings in config/environments/* take precedence over those specified
17
+ # here. Application configuration should go into files in
18
+ # config/initializers -- all .rb files in that directory are automatically
19
+ # loaded.
20
+
21
+ # Set Time.zone default to the specified zone and make Active Record
22
+ # auto-convert to this zone. Run 'rake -D time' for a list of tasks for
23
+ # finding time zone names. Default is UTC.
22
24
  # config.time_zone = 'Central Time (US & Canada)'
23
25
 
24
- # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
25
- # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
26
+ # The default locale is :en and all translations from
27
+ # config/locales/*.rb,yml are auto loaded.
28
+ # config.i18n.load_path += Dir[
29
+ # Rails.root.join('my', 'locales', '*.{rb,yml}').to_s
30
+ # ]
26
31
  # config.i18n.default_locale = :de
27
32
 
28
33
  # Do not swallow errors in after_commit/after_rollback callbacks.
@@ -41,6 +46,7 @@ module Dummy
41
46
  end
42
47
  end
43
48
 
44
- FactoryGirl.definition_file_paths << MessageTrain::Engine.root.join('spec/factories')
49
+ FactoryGirl.definition_file_paths << MessageTrain::Engine.root.join(
50
+ 'spec/factories'
51
+ )
45
52
  FactoryGirl.reload
46
-
@@ -1,5 +1,6 @@
1
1
  Rails.application.configure do
2
- # Settings specified here will take precedence over those in config/application.rb.
2
+ # Settings specified here will take precedence over those in
3
+ # config/application.rb.
3
4
 
4
5
  # In the development environment your application's code is reloaded on
5
6
  # every request. This slows down response time but is perfect for development
@@ -15,7 +16,7 @@ Rails.application.configure do
15
16
 
16
17
  # Don't care if the mailer can't send.
17
18
  config.action_mailer.raise_delivery_errors = false
18
- config.action_mailer.default_url_options = { :host => 'localhost:3000' }
19
+ config.action_mailer.default_url_options = { host: 'localhost:3000' }
19
20
 
20
21
  # Print deprecation notices to the Rails logger.
21
22
  config.active_support.deprecation = :log
@@ -28,8 +29,8 @@ Rails.application.configure do
28
29
  # number of complex assets.
29
30
  config.assets.debug = true
30
31
 
31
- # Asset digests allow you to set far-future HTTP expiration dates on all assets,
32
- # yet still be able to expire them through the digest params.
32
+ # Asset digests allow you to set far-future HTTP expiration dates on all
33
+ # assets, yet still be able to expire them through the digest params.
33
34
  config.assets.digest = true
34
35
 
35
36
  # Adds additional error checking when serving assets at runtime.
@@ -1,5 +1,6 @@
1
1
  Rails.application.configure do
2
- # Settings specified here will take precedence over those in config/application.rb.
2
+ # Settings specified here will take precedence over those in
3
+ # config/application.rb.
3
4
 
4
5
  # Code is not reloaded between requests.
5
6
  config.cache_classes = true
@@ -31,17 +32,19 @@ Rails.application.configure do
31
32
  # Do not fallback to assets pipeline if a precompiled asset is missed.
32
33
  config.assets.compile = false
33
34
 
34
- # Asset digests allow you to set far-future HTTP expiration dates on all assets,
35
- # yet still be able to expire them through the digest params.
35
+ # Asset digests allow you to set far-future HTTP expiration dates on all
36
+ # assets, yet still be able to expire them through the digest params.
36
37
  config.assets.digest = true
37
38
 
38
- # `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb
39
+ # `config.assets.precompile` and `config.assets.version` have moved to
40
+ # config/initializers/assets.rb
39
41
 
40
42
  # Specifies the header that your server uses for sending files.
41
43
  # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
42
44
  # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
43
45
 
44
- # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
46
+ # Force all access to the app over SSL, use Strict-Transport-Security,
47
+ # and use secure cookies.
45
48
  # config.force_ssl = true
46
49
 
47
50
  # Use the lowest log level to ensure availability of diagnostic information
@@ -61,7 +64,8 @@ Rails.application.configure do
61
64
  # config.action_controller.asset_host = 'http://assets.example.com'
62
65
 
63
66
  # Ignore bad email addresses and do not raise email delivery errors.
64
- # Set this to true and configure the email server for immediate delivery to raise delivery errors.
67
+ # Set this to true and configure the email server for immediate delivery to
68
+ # raise delivery errors.
65
69
  # config.action_mailer.raise_delivery_errors = false
66
70
 
67
71
  # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
@@ -1,9 +1,10 @@
1
1
  Rails.application.configure do
2
- # Settings specified here will take precedence over those in config/application.rb.
2
+ # Settings specified here will take precedence over those in
3
+ # config/application.rb.
3
4
 
4
5
  # The test environment is used exclusively to run your application's
5
6
  # test suite. You never need to work with it otherwise. Remember that
6
- # your test database is "scratch space" for the test suite and is wiped
7
+ # your test database is 'scratch space' for the test suite and is wiped
7
8
  # and recreated between test runs. Don't rely on the data there!
8
9
  config.cache_classes = true
9
10
 
@@ -30,7 +31,7 @@ Rails.application.configure do
30
31
  # The :test delivery method accumulates sent emails in the
31
32
  # ActionMailer::Base.deliveries array.
32
33
  config.action_mailer.delivery_method = :test
33
- config.action_mailer.default_url_options = { :host => 'localhost:3000' }
34
+ config.action_mailer.default_url_options = { host: 'localhost:3000' }
34
35
 
35
36
  # Randomize the order test cases are executed.
36
37
  config.active_support.test_order = :random
@@ -7,5 +7,6 @@ Rails.application.config.assets.version = '1.0'
7
7
  # Rails.application.config.assets.paths << Emoji.images_path
8
8
 
9
9
  # Precompile additional assets.
10
- # application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
10
+ # application.js, application.css, and all non-JS/CSS in app/assets folder
11
+ # are already added.
11
12
  # Rails.application.config.assets.precompile += %w( search.js )
@@ -1,7 +1,9 @@
1
1
  # Be sure to restart your server when you modify this file.
2
2
 
3
- # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
3
+ # You can add backtrace silencers for libraries that you're using but don't wish
4
+ # to see in your backtraces.
4
5
  # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5
6
 
6
- # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7
+ # You can also remove all the silencers if you're trying to debug a problem that
8
+ # might stem from framework code.
7
9
  # Rails.backtrace_cleaner.remove_silencers!
@@ -4,4 +4,4 @@ BootstrapLeather.configure do |config|
4
4
  config.application_title = 'Message Train'
5
5
  config.application_description = 'Rails 4 Private Messaging Engine'
6
6
  config.application_keywords = 'rails-4, private-messaging, messaging, engines'
7
- end
7
+ end
@@ -4,15 +4,18 @@ Devise.setup do |config|
4
4
  # The secret key used by Devise. Devise uses this key to generate
5
5
  # random tokens. Changing this key will render invalid all existing
6
6
  # confirmation, reset password and unlock tokens in the database.
7
- # Devise will use the `secret_key_base` on Rails 4+ applications as its `secret_key`
7
+ # Devise will use the `secret_key_base` on Rails 4+ applications as its
8
+ # `secret_key`
8
9
  # by default. You can change it below and use your own secret key.
9
- # config.secret_key = '6352074d0d9160d3fa5da4c6eb7b86f3702ac8d0e630f59705dc800d2f161ad8e53494e61585088250bf10ce403e61cf93e9f1ab3d9ecb4a8b3616857f86cabd'
10
+ # config.secret_key = '6352074d0d9160d3fa5da4c6eb7b86f3702ac8d0e630f59705dc8'\
11
+ # '00d2f161ad8e53494e61585088250bf10ce403e61cf93e9f1ab3d9ecb4a8b3616857f8'\
12
+ # '6cabd'
10
13
 
11
14
  # ==> Mailer Configuration
12
15
  # Configure the e-mail address which will be shown in Devise::Mailer,
13
16
  # note that it will be overwritten if you use your own mailer class
14
- # with default "from" parameter.
15
- config.mailer_sender = 'please-change-me-at-config-initializers-devise@example.com'
17
+ # with default 'from' parameter.
18
+ config.mailer_sender = 'webmaster@gemvein.com'
16
19
 
17
20
  # Configure the class responsible to send e-mails.
18
21
  # config.mailer = 'Devise::Mailer'
@@ -28,16 +31,19 @@ Devise.setup do |config|
28
31
  # just :email. You can configure it to use [:username, :subdomain], so for
29
32
  # authenticating a user, both parameters are required. Remember that those
30
33
  # parameters are used only when authenticating and not when retrieving from
31
- # session. If you need permissions, you should implement that in a before filter.
34
+ # session. If you need permissions, you should implement that in a before
35
+ # filter.
36
+ #
32
37
  # You can also supply a hash where the value is a boolean determining whether
33
38
  # or not authentication should be aborted when the value is not present.
34
39
  # config.authentication_keys = [:email]
35
40
 
36
- # Configure parameters from the request object used for authentication. Each entry
37
- # given should be a request method and it will automatically be passed to the
38
- # find_for_authentication method and considered in your model lookup. For instance,
39
- # if you set :request_keys to [:subdomain], :subdomain will be used on authentication.
40
- # The same considerations mentioned for authentication_keys also apply to request_keys.
41
+ # Configure parameters from the request object used for authentication. Each
42
+ # entry given should be a request method and it will automatically be passed
43
+ # to the find_for_authentication method and considered in your model lookup.
44
+ # For instance, if you set :request_keys to [:subdomain], :subdomain will be
45
+ # used on authentication. The same considerations mentioned for
46
+ # authentication_keys also apply to request_keys.
41
47
  # config.request_keys = []
42
48
 
43
49
  # Configure which authentication keys should be case-insensitive.
@@ -47,20 +53,24 @@ Devise.setup do |config|
47
53
 
48
54
  # Configure which authentication keys should have whitespace stripped.
49
55
  # These keys will have whitespace before and after removed upon creating or
50
- # modifying a user and when used to authenticate or find a user. Default is :email.
56
+ # modifying a user and when used to authenticate or find a user.
57
+ # Default is :email.
51
58
  config.strip_whitespace_keys = [:email]
52
59
 
53
60
  # Tell if authentication through request.params is enabled. True by default.
54
- # It can be set to an array that will enable params authentication only for the
55
- # given strategies, for example, `config.params_authenticatable = [:database]` will
56
- # enable it only for database (email + password) authentication.
61
+ # It can be set to an array that will enable params authentication only for
62
+ # the given strategies, for example,
63
+ # `config.params_authenticatable = [:database]` will enable it only for
64
+ # database (email + password) authentication.
57
65
  # config.params_authenticatable = true
58
66
 
59
67
  # Tell if authentication through HTTP Auth is enabled. False by default.
60
68
  # It can be set to an array that will enable http authentication only for the
61
- # given strategies, for example, `config.http_authenticatable = [:database]` will
62
- # enable it only for database authentication. The supported strategies are:
63
- # :database = Support basic authentication with authentication key + password
69
+ # given strategies, for example, `config.http_authenticatable = [:database]`
70
+ # will enable it only for database authentication. The supported strategies
71
+ # are:
72
+ # :database = Support basic authentication with authentication key +
73
+ # password
64
74
  # config.http_authenticatable = false
65
75
 
66
76
  # If 401 status code should be returned for AJAX requests. True by default.
@@ -89,17 +99,20 @@ Devise.setup do |config|
89
99
 
90
100
  # ==> Configuration for :database_authenticatable
91
101
  # For bcrypt, this is the cost for hashing the password and defaults to 10. If
92
- # using other encryptors, it sets how many times you want the password re-encrypted.
102
+ # using other encryptors, it sets how many times you want the password
103
+ # re-encrypted.
93
104
  #
94
- # Limiting the stretches to just one in testing will increase the performance of
95
- # your test suite dramatically. However, it is STRONGLY RECOMMENDED to not use
96
- # a value less than 10 in other environments. Note that, for bcrypt (the default
97
- # encryptor), the cost increases exponentially with the number of stretches (e.g.
98
- # a value of 20 is already extremely slow: approx. 60 seconds for 1 calculation).
105
+ # Limiting the stretches to just one in testing will increase the performance
106
+ # of your test suite dramatically. However, it is STRONGLY RECOMMENDED to not
107
+ # use a value less than 10 in other environments. Note that, for bcrypt (the
108
+ # default encryptor), the cost increases exponentially with the number of
109
+ # stretches (e.g. a value of 20 is already extremely slow: approx. 60 seconds
110
+ # for 1 calculation).
99
111
  config.stretches = Rails.env.test? ? 1 : 10
100
112
 
101
113
  # Setup a pepper to generate the encrypted password.
102
- # config.pepper = 'a95ea3408f3feea9a0ba1963155da0f113da027cafeff20e1af3c599af7f0e1ef9e3128be4a1656a756e754dd7db15b089d67fc2fb2845510618a2edb74ef7dc'
114
+ # config.pepper = 'a95ea3408f3feea9a0ba1963155da0f113da027cafeff20e1af3c599a'\
115
+ # 'f7f0e1ef9e3128be4a1656a756e754dd7db15b089d67fc2fb2845510618a2edb74ef7dc'
103
116
 
104
117
  # ==> Configuration for :confirmable
105
118
  # A period that the user is allowed to access the website even without
@@ -118,9 +131,10 @@ Devise.setup do |config|
118
131
  # config.confirm_within = 3.days
119
132
 
120
133
  # If true, requires any email changes to be confirmed (exactly the same way as
121
- # initial account confirmation) to be applied. Requires additional unconfirmed_email
122
- # db field (see migrations). Until confirmed, new email is stored in
123
- # unconfirmed_email column, and copied to email column on successful confirmation.
134
+ # initial account confirmation) to be applied. Requires additional
135
+ # unconfirmed_email db field (see migrations). Until confirmed, new email is
136
+ # stored in unconfirmed_email column, and copied to email column on successful
137
+ # confirmation.
124
138
  config.reconfirmable = true
125
139
 
126
140
  # Defines which key will be used when confirming an account
@@ -159,7 +173,8 @@ Devise.setup do |config|
159
173
 
160
174
  # ==> Configuration for :lockable
161
175
  # Defines which strategy will be used to lock an account.
162
- # :failed_attempts = Locks an account after a number of failed attempts to sign in.
176
+ # :failed_attempts = Locks an account after a number of failed attempts to
177
+ # sign in.
163
178
  # :none = No lock strategy. You should handle locking by yourself.
164
179
  # config.lock_strategy = :failed_attempts
165
180
 
@@ -168,7 +183,8 @@ Devise.setup do |config|
168
183
 
169
184
  # Defines which strategy will be used to unlock an account.
170
185
  # :email = Sends an unlock link to the user email
171
- # :time = Re-enables login after a certain amount of time (see :unlock_in below)
186
+ # :time = Re-enables login after a certain amount of time (see :unlock_in
187
+ # below)
172
188
  # :both = Enables both strategies
173
189
  # :none = No unlock strategy. You should handle unlocking by yourself.
174
190
  # config.unlock_strategy = :both
@@ -193,24 +209,24 @@ Devise.setup do |config|
193
209
  # change their passwords.
194
210
  config.reset_password_within = 6.hours
195
211
 
196
- # When set to false, does not sign a user in automatically after their password is
197
- # reset. Defaults to true, so a user is signed in automatically after a reset.
198
- # config.sign_in_after_reset_password = true
212
+ # When set to false, does not sign a user in automatically after their
213
+ # password is reset. Defaults to true, so a user is signed in automatically
214
+ # after a reset. config.sign_in_after_reset_password = true
199
215
 
200
216
  # ==> Configuration for :encryptable
201
- # Allow you to use another encryption algorithm besides bcrypt (default). You can use
202
- # :sha1, :sha512 or encryptors from others authentication tools as :clearance_sha1,
203
- # :authlogic_sha512 (then you should set stretches above to 20 for default behavior)
204
- # and :restful_authentication_sha1 (then you should set stretches to 10, and copy
205
- # REST_AUTH_SITE_KEY to pepper).
217
+ # Allow you to use another encryption algorithm besides bcrypt (default). You
218
+ # can use :sha1, :sha512 or encryptors from others authentication tools as
219
+ # :clearance_sha1, :authlogic_sha512 (then you should set stretches above to
220
+ # 20 for default behavior) and :restful_authentication_sha1 (then you should
221
+ # set stretches to 10, and copy REST_AUTH_SITE_KEY to pepper).
206
222
  #
207
223
  # Require the `devise-encryptable` gem when using anything other than bcrypt
208
224
  # config.encryptor = :sha512
209
225
 
210
226
  # ==> Scopes configuration
211
- # Turn scoped views on. Before rendering "sessions/new", it will first check for
212
- # "users/sessions/new". It's turned off by default because it's slower if you
213
- # are using only default views.
227
+ # Turn scoped views on. Before rendering 'sessions/new', it will first check
228
+ # for 'users/sessions/new'. It's turned off by default because it's slower if
229
+ # you are using only default views.
214
230
  # config.scoped_views = false
215
231
 
216
232
  # Configure the default scope given to Warden. By default it's the first
@@ -229,7 +245,7 @@ Devise.setup do |config|
229
245
  # If you have any extra navigational formats, like :iphone or :mobile, you
230
246
  # should add them to the navigational formats lists.
231
247
  #
232
- # The "*/*" below is required to match Internet Explorer requests.
248
+ # The '*/*' below is required to match Internet Explorer requests.
233
249
  # config.navigational_formats = ['*/*', :html]
234
250
 
235
251
  # The default HTTP method used to sign out a resource. Default is :delete.
@@ -242,7 +258,8 @@ Devise.setup do |config|
242
258
 
243
259
  # ==> Warden configuration
244
260
  # If you want to use other strategies, that are not supported by Devise, or
245
- # change the failure app, you can configure them inside the config.warden block.
261
+ # change the failure app, you can configure them inside the config.warden
262
+ # block.
246
263
  #
247
264
  # config.warden do |manager|
248
265
  # manager.intercept_401 = false
@@ -250,8 +267,10 @@ Devise.setup do |config|
250
267
  # end
251
268
 
252
269
  # ==> Mountable engine configurations
253
- # When using Devise inside an engine, let's call it `MyEngine`, and this engine
254
- # is mountable, there are some extra configurations to be taken into account.
270
+ # When using Devise inside an engine, let's call it `MyEngine`, and this
271
+ # engine is mountable, there are some extra configurations to be taken into
272
+ # account.
273
+ #
255
274
  # The following options are available, assuming the engine is mounted as:
256
275
  #
257
276
  # mount MyEngine, at: '/my_engine'
@@ -1,3 +1,3 @@
1
1
  HighVoltage.configure do |config|
2
2
  config.home_page = 'index'
3
- end
3
+ end
@@ -6,9 +6,12 @@ MessageTrain.configure do |config|
6
6
  # config.user_sign_in_path = '/user/sign_in'
7
7
  # config.user_route_authentication_method = :user
8
8
  # config.address_book_methods[:users] = :address_book
9
- config.address_book_method = :fallback_address_book # "Groups" will pick this up, having no address book method.
9
+
10
+ # 'Groups' will pick this up, having no address book method.
11
+ config.address_book_method = :fallback_address_book
10
12
  config.from_email = 'do-not-reply@gemvein.com'
11
13
  config.site_name = 'MessageTrain Test Site'
12
14
  end
13
15
 
14
- Rails.application.config.eager_load = true #FIXME: This is a weird place to put this. What would be better?
16
+ # FIXME: This is a weird place to put this. What would be better?
17
+ Rails.application.config.eager_load = true
@@ -1,4 +1,4 @@
1
1
  # Be sure to restart your server when you modify this file.
2
2
 
3
3
  # Add new mime types for use in respond_to blocks:
4
- # Mime::Type.register "text/richtext", :rtf
4
+ # Mime::Type.register 'text/richtext', :rtf
@@ -1,2 +1,5 @@
1
- Paperclip::Attachment.default_options[:path] = ':rails_root/public/system/:rails_env/:class/:attachment/:id_partition/:style/:filename'
2
- Paperclip::Attachment.default_options[:url] = '/system/:rails_env/:class/:attachment/:id_partition/:style/:filename'
1
+ Paperclip::Attachment.default_options[:path] =
2
+ ':rails_root/public/system/:rails_env/:class/:attachment/:id_partition/'\
3
+ ':style/:filename'
4
+ Paperclip::Attachment.default_options[:url] =
5
+ '/system/:rails_env/:class/:attachment/:id_partition/:style/:filename'
@@ -2,6 +2,7 @@ Rolify.configure do |config|
2
2
  # By default ORM adapter is ActiveRecord. uncomment to use mongoid
3
3
  # config.use_mongoid
4
4
 
5
- # Dynamic shortcuts for User class (user.is_admin? like methods). Default is: false
5
+ # Dynamic shortcuts for User class (user.is_admin? like methods).
6
+ # Default is: false
6
7
  # config.use_dynamic_shortcuts
7
- end
8
+ end
@@ -3,7 +3,8 @@
3
3
  # This file contains settings for ActionController::ParamsWrapper which
4
4
  # is enabled by default.
5
5
 
6
- # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
6
+ # Enable parameter wrapping for JSON. You can disable this by setting :format
7
+ # to an empty array.
7
8
  ActiveSupport.on_load(:action_controller) do
8
9
  wrap_parameters format: [:json] if respond_to?(:wrap_parameters)
9
10
  end
@@ -1,6 +1,4 @@
1
1
  Rails.application.routes.draw do
2
-
3
-
4
- mount MessageTrain::Engine => '/', :as => 'message_train'
2
+ mount MessageTrain::Engine => '/', as: 'message_train'
5
3
  devise_for :users
6
4
  end
@@ -6,4 +6,4 @@ mailer:
6
6
  user_name: <%= ENV["MAILER_USERNAME"] %>
7
7
  password: <%= ENV["MAILER_PASSWORD"] %>
8
8
  authentication: :login
9
- enable_starttls_auto: true
9
+ enable_starttls_auto: true