Module: RailsJwtAuth::Invitable::ClassMethods

Defined in:
app/models/concerns/rails_jwt_auth/invitable.rb

Instance Method Summary collapse

Instance Method Details

#invite(attributes = {}) ⇒ Object

Creates an user and sends an invitation to him.



20
21
22
23
24
25
26
27
28
29
30
# File 'app/models/concerns/rails_jwt_auth/invitable.rb', line 20

def invite(attributes={})
  attrs = ActiveSupport::HashWithIndifferentAccess.new(attributes.to_h)
  auth_field = RailsJwtAuth.auth_field_name
  auth_attribute = attrs.delete(auth_field)

  record = RailsJwtAuth.model.find_or_initialize_by(auth_field => auth_attribute)
  record.assign_attributes(attrs)

  record.invite
  record
end