diff --git a/js/contact.js b/js/contact.js index 6b320097..0288d8f5 100644 --- a/js/contact.js +++ b/js/contact.js @@ -1,52 +1,60 @@ -/** - * This class provides access to the device contacts. - * @constructor - */ - -function Contact(jsonObject) { - this.firstName = ""; - this.lastName = ""; - this.name = ""; - this.phones = {}; - this.emails = {}; - this.address = ""; +var Contact = function(){ + this.name = null; + this.emails = []; + this.phones = []; } -Contact.prototype.displayName = function() +var ContactName = function() { - // TODO: can be tuned according to prefs - return this.name; + this.formatted = ""; + this.familyName = ""; + this.givenName = ""; + this.additionalNames = []; + this.prefixes = []; + this.suffixes = []; } -function ContactManager() { - // Dummy object to hold array of contacts - this.contacts = []; - this.timestamp = new Date().getTime(); + +var ContactEmail = function() +{ + this.types = []; + this.address = ""; } -ContactManager.prototype.getAllContacts = function(successCallback, errorCallback, options) { - // Interface + +var Contacts = function() +{ + this.records = []; } -PhoneGap.addConstructor(function() { - if (typeof navigator.ContactManager == "undefined") navigator.ContactManager = new ContactManager(); -}); -ContactManager.prototype.getAllContacts = function(successCallback, errorCallback, options) { - this.win = successCallback; - this.fail = errorCallback; - ContactHook.getContactsAndSendBack(); +var Contacts.prototype.find = function(obj, win, fail) +{ + if(obj.name) + { + ContactHook.search(name, "", ""); + } + this.win = win; + this.fail = fail; } -ContactManager.prototype.droidAddContact = function(name, phone, email) +var Contacts.prototype.droidFoundContact = function(name, npa, email) { var contact = new Contact(); - contact.name = name; - contact.phones.primary = phone; - contact.emails.primary = email; - this.contacts.push(contact); + contact.name = new ContactName(); + contact.name.formatted = name; + contact.name.givenName = name; + var mail = new ContactEmail(); + mail.types.push("home"); + mail.address = email; + contact.emails.push(mail); + phone = new ContactPhoneNumber(); + phone.types.push("home"); + phone.number = npa; + contact.phones.push(phone); + this.records.push(contact); } -ContactManager.prototype.droidDone = function() +var Contacts.prototype.droidDone = function() { - this.win(this.contacts); + this.win(this.records); }