mirror of
https://github.com/apache/cordova-android.git
synced 2025-01-19 23:42:53 +08:00
73 lines
2.0 KiB
JavaScript
73 lines
2.0 KiB
JavaScript
|
|
var Contact = function() {
|
|
this.name = new ContactName();
|
|
this.emails = [];
|
|
this.phones = [];
|
|
};
|
|
|
|
var ContactName = function() {
|
|
this.formatted = "";
|
|
this.familyName = "";
|
|
this.givenName = "";
|
|
this.additionalNames = [];
|
|
this.prefixes = [];
|
|
this.suffixes = [];
|
|
};
|
|
|
|
var ContactEmail = function() {
|
|
this.types = [];
|
|
this.address = "";
|
|
};
|
|
|
|
var ContactPhoneNumber = function() {
|
|
this.types = [];
|
|
this.number = "";
|
|
};
|
|
|
|
var Contacts = function() {
|
|
this.records = [];
|
|
};
|
|
|
|
Contacts.prototype.find = function(obj, win, fail) {
|
|
this.win = win;
|
|
this.fail = fail;
|
|
if(obj.name != null) {
|
|
// Build up the search term that we'll use in SQL, based on the structure/contents of the contact object passed into find.
|
|
var searchTerm = '';
|
|
if (obj.name.givenName && obj.name.givenName.length > 0) {
|
|
searchTerm = obj.name.givenName.split(' ').join('%');
|
|
}
|
|
if (obj.name.familyName && obj.name.familyName.length > 0) {
|
|
searchTerm += obj.name.familyName.split(' ').join('%');
|
|
}
|
|
if (!obj.name.familyName && !obj.name.givenName && obj.name.formatted) {
|
|
searchTerm = obj.name.formatted;
|
|
}
|
|
PhoneGap.execAsync(null, null, "Contacts", "search", [searchTerm, "", ""]);
|
|
}
|
|
};
|
|
|
|
Contacts.prototype.droidFoundContact = function(name, npa, email) {
|
|
var contact = new 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);
|
|
};
|
|
|
|
Contacts.prototype.droidDone = function() {
|
|
this.win(this.records);
|
|
};
|
|
|
|
PhoneGap.addConstructor(function() {
|
|
if(typeof navigator.contacts == "undefined") navigator.contacts = new Contacts();
|
|
});
|