You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by mm...@apache.org on 2014/05/05 18:09:56 UTC

[09/50] [abbrv] git commit: addresses added to the Proxy

addresses added to the Proxy


Project: http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/commit/0beadd24
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/tree/0beadd24
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/diff/0beadd24

Branch: refs/heads/cdvtest
Commit: 0beadd247ed7f5bb2fc084888eee566f86335c94
Parents: 24eed63
Author: Piotr Zalewa <pi...@zalewa.info>
Authored: Thu Dec 19 14:59:26 2013 +0100
Committer: Piotr Zalewa <pi...@zalewa.info>
Committed: Thu Dec 19 14:59:26 2013 +0100

----------------------------------------------------------------------
 src/firefoxos/ContactsProxy.js | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/blob/0beadd24/src/firefoxos/ContactsProxy.js
----------------------------------------------------------------------
diff --git a/src/firefoxos/ContactsProxy.js b/src/firefoxos/ContactsProxy.js
index ecdd0fb..62dc6dd 100644
--- a/src/firefoxos/ContactsProxy.js
+++ b/src/firefoxos/ContactsProxy.js
@@ -63,7 +63,15 @@ mozContact.prototype.updateFromCordova = function(contact) {
         for (var i=0; i < addresses.length; i++) {
             var addr = {};
             for (var key in addresses[i]) {
-                addr[key] = addresses[i][key];    
+                if (key == 'formatted' || key == 'id') {
+                    continue;
+                } else if (key == 'type') {
+                    addr[key] = [addresses[i][key]];
+                } else if (key == 'country') {
+                    addr['countryName'] = addresses[i][key];
+                } else {
+                    addr[key] = addresses[i][key];    
+                }
             } 
             arr.push(addr);
         }                                 
@@ -155,6 +163,26 @@ Contact.prototype.updateFromMozilla = function(moz) {
         return contactFields;
     }
 
+    function exportAddresses(addresses) {
+        // TODO: check moz address format
+        var arr = [];
+        
+        for (var i=0; i < addresses.length; i++) {
+            var addr = {};
+            for (var key in addresses[i]) {
+                if (key == 'countryName') {
+                    addr['country'] = addresses[i][key];
+                } else if (key == 'type') {
+                    addr[key] = addresses[i][key].join(' ');
+                } else {
+                    addr[key] = addresses[i][key];    
+                }
+            } 
+            arr.push(addr);
+        }
+        return arr;
+    } 
+
 
     if (moz.id) {
         this.id = moz.id;
@@ -186,7 +214,13 @@ Contact.prototype.updateFromMozilla = function(moz) {
         this.emails = exportContactField(moz.email);
     }
     // categories
+
     // addresses
+    if (moz.adr) {
+        this.addresses = exportAddresses(moz.adr);
+    }
+
+    // phoneNumbers
     if (moz.tel) {
         this.phoneNumbers = exportContactField(moz.tel);
     }