Module: Parliament::Grom::Decorator::ContactPoint
- Defined in:
- lib/parliament/grom/decorator/contact_point.rb
Overview
Decorator namespace for Grom::Node instances with type: id.parliament.uk/schema/ContactPoint
Constant Summary collapse
- ATTRIBUTE_LENGTH_LIMIT_HACK =
A hack has been added to postal_addresses, email, phone_number and fax_number to remove any details that are less than ATTRIBUTE_LENGTH_LIMIT_HACK in length including “.” and “-” addresses when these have been mistakenly entered into Mnis
1
Instance Method Summary collapse
-
#email ⇒ String
Alias email with fallback.
-
#fax_number ⇒ String
Alias faxNumber with fallback.
-
#parliamentary_incumbency ⇒ Grom::Node?
Alias contactPointHasParliamentaryIncumbency with fallback.
-
#person ⇒ Array
Alias contactPointHasPerson with fallback.
-
#phone_number ⇒ String
Alias phoneNumber with fallback.
-
#postal_addresses ⇒ Array
Alias contactPointHasPostalAddress with fallback.
Instance Method Details
#email ⇒ String
Alias email with fallback.
20 21 22 |
# File 'lib/parliament/grom/decorator/contact_point.rb', line 20 def email @email_decorator ||= instance_variable_get('@email'.to_sym) && instance_variable_get('@email'.to_sym).length > ATTRIBUTE_LENGTH_LIMIT_HACK ? instance_variable_get('@email'.to_sym).strip : '' end |
#fax_number ⇒ String
Alias faxNumber with fallback.
34 35 36 |
# File 'lib/parliament/grom/decorator/contact_point.rb', line 34 def fax_number @fax_number ||= respond_to?(:faxNumber) && faxNumber.length > ATTRIBUTE_LENGTH_LIMIT_HACK ? faxNumber : '' end |
#parliamentary_incumbency ⇒ Grom::Node?
Alias contactPointHasParliamentaryIncumbency with fallback.
48 49 50 |
# File 'lib/parliament/grom/decorator/contact_point.rb', line 48 def parliamentary_incumbency respond_to?(:contactPointHasParliamentaryIncumbency) ? contactPointHasParliamentaryIncumbency.first : nil end |
#person ⇒ Array
Alias contactPointHasPerson with fallback.
41 42 43 |
# File 'lib/parliament/grom/decorator/contact_point.rb', line 41 def person respond_to?(:contactPointHasPerson) ? contactPointHasPerson : [] end |
#phone_number ⇒ String
Alias phoneNumber with fallback.
27 28 29 |
# File 'lib/parliament/grom/decorator/contact_point.rb', line 27 def phone_number @phone_number ||= respond_to?(:phoneNumber) && phoneNumber.length > ATTRIBUTE_LENGTH_LIMIT_HACK ? phoneNumber : '' end |
#postal_addresses ⇒ Array
Alias contactPointHasPostalAddress with fallback.
13 14 15 |
# File 'lib/parliament/grom/decorator/contact_point.rb', line 13 def postal_addresses @postal_addresses ||= respond_to?(:contactPointHasPostalAddress) ? contactPointHasPostalAddress.reject { |address| address.full_address.length <= ATTRIBUTE_LENGTH_LIMIT_HACK } : [] end |