lib/osm/member.rb in osm-1.2.18.dev.11 vs lib/osm/member.rb in osm-1.2.18.dev.12
- old
+ new
@@ -215,11 +215,11 @@
email_2: member_contact[CID_EMAIL_2],
receive_phone_1: member_contact[CID_RECIEVE_PHONE_1],
receive_phone_2: member_contact[CID_RECIEVE_PHONE_2],
receive_email_1: member_contact[CID_RECIEVE_EMAIL_1],
receive_email_2: member_contact[CID_RECIEVE_EMAIL_2],
- additional_information: member_custom.select{ |k,v| !['title'].include?(k) },
+ additional_information: DirtyHashy[ member_custom.select{ |k,v| !['title'].include?(k) } ],
additional_information_labels: custom_labels[GID_MEMBER_CONTACT],
),
:primary_contact => primary_contact.nil? ? nil : PrimaryContact.new(
title: primary_contact[CID_TITLE],
first_name: primary_contact[CID_FIRST_NAME],
@@ -289,12 +289,12 @@
phone_1: doctor_contact[CID_PHONE_1],
phone_2: doctor_contact[CID_PHONE_2],
additional_information: doctor_custom,
additional_information_labels: custom_labels[GID_DOCTOR_CONTACT],
),
- additional_information: custom_data.select{ |k,v| ! ['title'].include?(k) },
- additional_information_labels: custom_labels[GID_CUSTOM].select{ |k,v| ! ['title'].include?(k) },
+ additional_information: DirtyHashy[ custom_data.select{ |k,v| !['title'].include?(k) } ],
+ additional_information_labels: custom_labels[GID_CUSTOM].select{ |k,v| !['title'].include?(k) },
)
end
cache_write(api, cache_key, result)
return result
@@ -370,26 +370,25 @@
updated = updated && data.is_a?(Hash) && data['ok'].eql?(true)
end # each attr to update
# Do title attribute
if force || changed_attributes.include?('title')
- data = api.perform_query("ext/members/contact/?action=update", {
+ data = api.perform_query("ext/customdata/?action=updateColumn§ion_id=#{section_id}", {
'associated_id' => self.id,
'associated_type' => 'member',
'value' => title,
'column_id' => CID_TITLE,
'group_id' => GID_CUSTOM,
'context' => 'members',
})
updated = updated && data.is_a?(Hash) && data['data'].is_a?(Hash) && data['data']['value'].eql?(title)
end
-
# Do 'floating' attributes
if force || changed_attributes.include?('gender')
new_value = {male: 'Male', female: 'Female', other: 'Other'}[gender] || 'Unspecified'
- data = api.perform_query("ext/members/contact/?action=update", {
+ data = api.perform_query("ext/customdata/?action=updateColumn§ion_id=#{section_id}", {
'associated_id' => self.id,
'associated_type' => 'member',
'value' => new_value,
'column_id' => CID_GENDER,
'group_id' => GID_FLOATING,
@@ -735,10 +734,10 @@
end
additional_information.keys.select{ |a| force || additional_information.changes.keys.include?(a) }.each do |attr|
data["data[#{attr}]"] = additional_information[attr]
end
- updated = false
+ updated = true
unless data.empty?
result = api.perform_query("ext/customdata/?action=update§ion_id=#{member.section_id}", {
'associated_id' => member.id,
'associated_type' => 'member',
'context' => 'members',