Module: RailsJwtAuth::Invitable::ClassMethods
- Defined in:
- app/models/concerns/rails_jwt_auth/invitable.rb
Instance Method Summary collapse
-
#invite!(attributes = {}) ⇒ user
Creates an user and sends an invitation to him.
Instance Method Details
#invite!(attributes = {}) ⇒ user
Creates an user and sends an invitation to him. If the user is already invited and pending of completing registration the invitation is resent by email. If the user is already registered, it returns the user with a :taken on the email field.
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'app/models/concerns/rails_jwt_auth/invitable.rb', line 34 def invite!(attributes={}) attrs = ActiveSupport::HashWithIndifferentAccess.new(attributes.to_h) auth_field = RailsJwtAuth.auth_field_name auth_attribute = attrs.delete(auth_field) raise ArgumentError unless auth_attribute record = RailsJwtAuth.model.find_or_initialize_by(auth_field => auth_attribute) record.assign_attributes(attrs) record.invite! record end |