Mon 21 Jul 22:43:21 CEST 2025
This commit is contained in:
parent
41b6d8d1fb
commit
4c6d70f2c6
98
js/ui/cordova/plugins/cordova-plugin-contacts/www/contacts.js
vendored
Normal file
98
js/ui/cordova/plugins/cordova-plugin-contacts/www/contacts.js
vendored
Normal file
|
@ -0,0 +1,98 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
* or more contributor license agreements. See the NOTICE file
|
||||||
|
* distributed with this work for additional information
|
||||||
|
* regarding copyright ownership. The ASF licenses this file
|
||||||
|
* to you under the Apache License, Version 2.0 (the
|
||||||
|
* "License"); you may not use this file except in compliance
|
||||||
|
* with the License. You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
var argscheck = require('cordova/argscheck'),
|
||||||
|
exec = require('cordova/exec'),
|
||||||
|
ContactError = require('./ContactError'),
|
||||||
|
utils = require('cordova/utils'),
|
||||||
|
Contact = require('./Contact'),
|
||||||
|
fieldType = require('./ContactFieldType');
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents a group of Contacts.
|
||||||
|
* @constructor
|
||||||
|
*/
|
||||||
|
var contacts = {
|
||||||
|
fieldType: fieldType,
|
||||||
|
/**
|
||||||
|
* Returns an array of Contacts matching the search criteria.
|
||||||
|
* @param fields that should be searched
|
||||||
|
* @param successCB success callback
|
||||||
|
* @param errorCB error callback
|
||||||
|
* @param {ContactFindOptions} options that can be applied to contact searching
|
||||||
|
* @return array of Contacts matching search criteria
|
||||||
|
*/
|
||||||
|
find:function(fields, successCB, errorCB, options) {
|
||||||
|
argscheck.checkArgs('afFO', 'contacts.find', arguments);
|
||||||
|
if (!fields.length) {
|
||||||
|
errorCB && errorCB(new ContactError(ContactError.INVALID_ARGUMENT_ERROR));
|
||||||
|
} else {
|
||||||
|
// missing 'options' param means return all contacts
|
||||||
|
options = options || {filter: '', multiple: true}
|
||||||
|
var win = function(result) {
|
||||||
|
var cs = [];
|
||||||
|
for (var i = 0, l = result.length; i < l; i++) {
|
||||||
|
cs.push(contacts.create(result[i]));
|
||||||
|
}
|
||||||
|
successCB(cs);
|
||||||
|
};
|
||||||
|
exec(win, errorCB, "Contacts", "search", [fields, options]);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function picks contact from phone using contact picker UI
|
||||||
|
* @returns new Contact object
|
||||||
|
*/
|
||||||
|
pickContact: function (successCB, errorCB) {
|
||||||
|
|
||||||
|
argscheck.checkArgs('fF', 'contacts.pick', arguments);
|
||||||
|
|
||||||
|
var win = function (result) {
|
||||||
|
// if Contacts.pickContact return instance of Contact object
|
||||||
|
// don't create new Contact object, use current
|
||||||
|
var contact = result instanceof Contact ? result : contacts.create(result);
|
||||||
|
successCB(contact);
|
||||||
|
};
|
||||||
|
exec(win, errorCB, "Contacts", "pickContact", []);
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function creates a new contact, but it does not persist the contact
|
||||||
|
* to device storage. To persist the contact to device storage, invoke
|
||||||
|
* contact.save().
|
||||||
|
* @param properties an object whose properties will be examined to create a new Contact
|
||||||
|
* @returns new Contact object
|
||||||
|
*/
|
||||||
|
create:function(properties) {
|
||||||
|
argscheck.checkArgs('O', 'contacts.create', arguments);
|
||||||
|
var contact = new Contact();
|
||||||
|
for (var i in properties) {
|
||||||
|
if (typeof contact[i] !== 'undefined' && properties.hasOwnProperty(i)) {
|
||||||
|
contact[i] = properties[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return contact;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
module.exports = contacts;
|
Loading…
Reference in New Issue
Block a user