Class: Invitation::Configuration
- Inherits:
-
Object
- Object
- Invitation::Configuration
- Defined in:
- lib/invitation/configuration.rb
Overview
Configure the invitation module. Invoke from a rails initializer.
Example:
Invitation.configure do |config|
config.user_registration_path = ->(params) { new_profile_path(param) }
end
Instance Attribute Summary collapse
-
#case_sensitive_email ⇒ Boolean
Enable or disable email case-sensivity when inviting users.
-
#mailer_sender ⇒ String
Controls the ‘from’ address for Invitation emails.
-
#routes ⇒ Boolean
Enable or disable Invitation’s built-in routes.
- #user_model ⇒ Class
-
#user_registration_url ⇒ Lambda
Url for new users to register for your application.
Instance Method Summary collapse
-
#initialize ⇒ Configuration
constructor
A new instance of Configuration.
-
#routes_enabled? ⇒ Boolean
Are Invitation’s built-in routes enabled?.
- #user_model_class_name ⇒ Object
- #user_model_instance_var ⇒ Object
Constructor Details
#initialize ⇒ Configuration
Returns a new instance of Configuration.
65 66 67 68 69 70 71 |
# File 'lib/invitation/configuration.rb', line 65 def initialize @user_model = '::User' #if defined?(::User) @user_registration_url = ->(params) { Rails.application.routes.url_helpers.sign_up_url(params) } @mailer_sender = '[email protected]' @routes = true @case_sensitive_email = true end |
Instance Attribute Details
#case_sensitive_email ⇒ Boolean
Enable or disable email case-sensivity when inviting users. If set to ‘false’, searching for user existence via email will disregard case.
Defaults to ‘true’.
63 64 65 |
# File 'lib/invitation/configuration.rb', line 63 def case_sensitive_email @case_sensitive_email end |
#mailer_sender ⇒ String
Controls the ‘from’ address for Invitation emails. Set this to a value appropriate to your application.
Defaults to [email protected].
43 44 45 |
# File 'lib/invitation/configuration.rb', line 43 def mailer_sender @mailer_sender end |
#routes ⇒ Boolean
Enable or disable Invitation’s built-in routes.
Defaults to ‘true’.
If you disable the routes, your application is responsible for all routes.
You can deploy a copy of Invitations’s routes with ‘rails generate invitation:routes`, which will also set `config.routes = false`.
55 56 57 |
# File 'lib/invitation/configuration.rb', line 55 def routes @routes end |
#user_model ⇒ Class
24 25 26 |
# File 'lib/invitation/configuration.rb', line 24 def user_model @user_model end |
#user_registration_url ⇒ Lambda
Url for new users to register for your application. New users are invited to sign up at this url via email. The url should be expressed as a lambda that accepts one argument, a params hash. This hash will contain the invitation token.
Defaults to: ->(params) { Rails.application.routes.url_helpers.sign_up_url(params) }
Note that the default assumes you have ‘sign_up_url`.
35 36 37 |
# File 'lib/invitation/configuration.rb', line 35 def user_registration_url @user_registration_url end |
Instance Method Details
#routes_enabled? ⇒ Boolean
Returns are Invitation’s built-in routes enabled?.
106 107 108 |
# File 'lib/invitation/configuration.rb', line 106 def routes_enabled? @routes end |
#user_model_class_name ⇒ Object
97 98 99 |
# File 'lib/invitation/configuration.rb', line 97 def user_model_class_name user_model.name.to_s end |
#user_model_instance_var ⇒ Object
101 102 103 |
# File 'lib/invitation/configuration.rb', line 101 def user_model_instance_var '@' + user_model.name.demodulize.underscore end |