Class: HasVcards::Address

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
I18nHelpers
Defined in:
app/models/has_vcards/address.rb

Instance Method Summary collapse

Instance Method Details

#to_sObject

Helpers



25
26
27
28
29
30
31
# File 'app/models/has_vcards/address.rb', line 25

def to_s
  I18n.translate('has_vcards.address.to_s',
                 street_address: street_address,
                 postal_code: postal_code,
                 locality: locality
  )
end

#validate_addressObject



13
14
15
16
17
18
19
20
21
22
# File 'app/models/has_vcards/address.rb', line 13

def validate_address
  errors.add_on_blank(:postal_code)
  errors.add_on_blank(:locality)

  return unless street_address.blank? && extended_address.blank? && post_office_box.blank?

  errors.add(:street_address, "#{t_attr(:street_address, Vcard)} #{I18n.translate('errors.messages.empty')}")
  errors.add(:extended_address, "#{t_attr(:extended_address, Vcard)} #{I18n.translate('errors.messages.empty')}")
  errors.add(:post_office_box, "#{t_attr(:post_office_box, Vcard)} #{I18n.translate('errors.messages.empty')}")
end

#zip_localityObject

Composed attributes



34
35
36
# File 'app/models/has_vcards/address.rb', line 34

def zip_locality
  "#{postal_code} #{locality}"
end

#zip_locality=(value) ⇒ Object



38
39
40
# File 'app/models/has_vcards/address.rb', line 38

def zip_locality=(value)
  self.postal_code, self.locality = value.split(' ', 2)
end