Class: Effective::MailchimpListMember

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/effective/mailchimp_list_member.rb

Instance Method Summary collapse

Instance Method Details

#assign_mailchimp_attributes(atts) ⇒ Object



42
43
44
45
46
47
48
49
50
51
# File 'app/models/effective/mailchimp_list_member.rb', line 42

def assign_mailchimp_attributes(atts)
  assign_attributes(
    mailchimp_id: atts['id'],
    web_id: atts['web_id'],
    email_address: atts['email_address'],
    full_name: atts['full_name'],
    subscribed: (atts['status'] == 'subscribed'),
    last_synced_at: Time.zone.now
  )
end

#assign_mailchimp_cannot_be_subscribedObject



53
54
55
56
57
58
59
# File 'app/models/effective/mailchimp_list_member.rb', line 53

def assign_mailchimp_cannot_be_subscribed
  assign_attributes(
    subscribed: false,
    cannot_be_subscribed: true,
    last_synced_at: Time.zone.now
  )
end

#emailObject



38
39
40
# File 'app/models/effective/mailchimp_list_member.rb', line 38

def email
  email_address.presence || user.email
end

#synced?Boolean

Returns:

  • (Boolean)


61
62
63
# File 'app/models/effective/mailchimp_list_member.rb', line 61

def synced?
  last_synced_at.present?
end

#to_sObject



34
35
36
# File 'app/models/effective/mailchimp_list_member.rb', line 34

def to_s
  mailchimp_list&.to_s || model_name.human
end