Class: Userlist::Rails::Transforms::User

Inherits:
Userlist::Rails::Transform show all
Defined in:
lib/userlist/rails/transforms/user.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Userlist::Rails::Transform

#[], #delete?, #hash, #initialize, #key?, #keys, #push?

Constructor Details

This class inherits a constructor from Userlist::Rails::Transform

Class Method Details

.attributesObject



7
8
9
10
11
12
13
14
15
# File 'lib/userlist/rails/transforms/user.rb', line 7

def self.attributes
  @attributes ||= [
    :identifier,
    :properties,
    :relationships,
    :email,
    :signed_up_at
  ]
end

Instance Method Details

#emailObject



31
32
33
# File 'lib/userlist/rails/transforms/user.rb', line 31

def email
  model.try(:userlist_email) || model.try(:email)
end

#identifierObject



17
18
19
# File 'lib/userlist/rails/transforms/user.rb', line 17

def identifier
  model.try(:userlist_identifier) || "#{model.class.name}-#{model.id}".parameterize
end

#propertiesObject



21
22
23
# File 'lib/userlist/rails/transforms/user.rb', line 21

def properties
  model.try(:userlist_properties) || {}
end

#relationshipsObject



25
26
27
28
29
# File 'lib/userlist/rails/transforms/user.rb', line 25

def relationships
  relationships_method = Userlist::Rails.find_reflection(config.user_model, config.relationship_model)&.name

  model.try(:userlist_relationships) || (relationships_method && model.try(relationships_method))
end

#signed_up_atObject



35
36
37
# File 'lib/userlist/rails/transforms/user.rb', line 35

def signed_up_at
  model.try(:created_at)
end