contacts_client 0.0.15 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/app/models/padma_contact.rb +11 -7
  2. metadata +2 -2
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  # wrapper for PADMA-Contacts API interaction
3
- # Configuration for LogicalModel on /config/initializers/logical_model.rb
3
+ # Configuration for LogicalModel on /config/initializers/contacts_client.rb
4
4
  class PadmaContact < LogicalModel
5
5
 
6
6
  self.hydra = Contacts::HYDRA
@@ -99,27 +99,31 @@ class PadmaContact < LogicalModel
99
99
  end
100
100
 
101
101
  ContactAttribute::AVAILABLE_TYPES.each do |type|
102
- define_method(type.to_s.pluralize) { self.contact_attributes.reject {|attr| !attr.is_a? type.to_s.camelize.constantize}.sort_by {|x| [x.primary ? 0 : 1, x._id]} }
102
+ define_method(type.to_s.pluralize) do
103
+ if self.contact_attributes
104
+ self.contact_attributes.reject { |attr| !attr.is_a? type.to_s.camelize.constantize }.sort_by { |x| [x.primary ? 0 : 1, x._id] }
105
+ end
106
+ end
103
107
  end
104
108
 
105
109
  def facebook_id
106
- self.contact_attributes.select{|attr| attr.is_a?(SocialNetworkId) && attr.category == "facebook"}.first
110
+ self.contact_attributes.select{|attr| attr.is_a?(SocialNetworkId) && attr.category == "facebook"}.first if self.contact_attributes
107
111
  end
108
112
 
109
113
  def mobiles
110
- self.contact_attributes.select{|attr| attr.is_a?(Telephone) && attr.category == "mobile"}
114
+ self.contact_attributes.select{|attr| attr.is_a?(Telephone) && attr.category == "mobile"} if self.contact_attributes
111
115
  end
112
116
 
113
117
  def non_mobile_phones
114
- self.contact_attributes.select{|attr| attr.is_a?(Telephone) && attr.category != "mobile"}
118
+ self.contact_attributes.select{|attr| attr.is_a?(Telephone) && attr.category != "mobile"} if self.contact_attributes
115
119
  end
116
120
 
117
121
  def former_student_at
118
- local_statuses.select{|s|s['value']=='former_student'}.map{|s|s['account_name']}
122
+ local_statuses.select{|s|s['value']=='former_student'}.map{|s|s['account_name']} if self.local_statuses
119
123
  end
120
124
 
121
125
  def prospect_at
122
- local_statuses.select{|s|s['value']=='prospect'}.map{|s|s['account_name']}
126
+ local_statuses.select{|s|s['value']=='prospect'}.map{|s|s['account_name']} if self.local_statuses
123
127
  end
124
128
 
125
129
  # Returns age in years of the contact or nil if age not available
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: contacts_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.15
4
+ version: 0.0.16
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-07-10 00:00:00.000000000 Z
12
+ date: 2013-07-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties