Class: Addressbook::Contact

Inherits:
Resource
  • Object
show all
Extended by:
CarrierWave::Mount
Defined in:
lib/addressbook/contact.rb

Defined Under Namespace

Modules: RelationExtensions Classes: Address, Email, Nested, Phone

Constant Summary collapse

GENDER =
%w(male female)

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

headers

Class Method Details

.import_csv(account, csv) ⇒ Object



35
36
37
38
39
# File 'lib/addressbook/contact.rb', line 35

def self.import_csv(, csv)
  uploader = ImportFileUploader.new
  File.open(csv.tempfile) { |file| uploader.store!(file) }
  Addressbook::Contact.get :import_csv, { account_id: .id, filename: uploader.filename }
end

.import_vcard(account, vcard) ⇒ Object



29
30
31
32
33
# File 'lib/addressbook/contact.rb', line 29

def self.import_vcard(, vcard)
  uploader = ImportFileUploader.new
  File.open(vcard.tempfile) { |file| uploader.store!(file) }
  Addressbook::Contact.get :import_vcard, { account_id: .id, filename: uploader.filename }
end

.search(query = {}) ⇒ Object



25
26
27
# File 'lib/addressbook/contact.rb', line 25

def self.search(query = {})
  self.find(:all, params: query)
end

Instance Method Details

#active?Boolean

Returns:

  • (Boolean)


45
46
47
# File 'lib/addressbook/contact.rb', line 45

def active?
  status == 'active'
end

#full_nameObject



41
42
43
# File 'lib/addressbook/contact.rb', line 41

def full_name
  [first_name, last_name].reject(&:blank?).join(' ')
end