<?php require_once __DIR__ . '/bootstrap.php'; OCP\App::addNavigationEntry(array('id' => 'contacts_index', 'order' => 10, 'href' => OCP\Util::linkTo('contacts', 'index.php'), 'icon' => OCP\Util::imagePath('contacts', 'contacts.svg'), 'name' => OC_L10N::get('contacts')->t('Contacts'))); OCP\Util::addscript('contacts', 'loader'); OC_Search::registerProvider('OCA\\Contacts\\SearchProvider'); if (OCP\User::isLoggedIn()) { foreach (OCA\Contacts\Addressbook::all(OCP\USER::getUser()) as $addressbook) { OCP\Contacts::registerAddressBook(new OCA\Contacts\AddressbookProvider($addressbook['id'])); } }
protected function setUp() { parent::setUp(); OCP\Contacts::clear(); }
public function testSearchInAddressBook() { // create mock for the addressbook $stub1 = $this->getMockForAbstractClass("OCP\\IAddressBook", array('getKey', 'getDisplayName', 'search')); $stub2 = $this->getMockForAbstractClass("OCP\\IAddressBook", array('getKey', 'getDisplayName', 'search')); $searchResult1 = array(array('id' => 0, 'FN' => 'Frank Karlitschek', 'EMAIL' => 'a@b.c', 'GEO' => '37.386013;-122.082932'), array('id' => 5, 'FN' => 'Klaas Freitag', 'EMAIL' => array('d@e.f', 'g@h.i'))); $searchResult2 = array(array('id' => 0, 'FN' => 'Thomas Müller', 'EMAIL' => 'a@b.c'), array('id' => 5, 'FN' => 'Thomas Tanghus', 'EMAIL' => array('d@e.f', 'g@h.i'))); // setup return for method calls for $stub1 $stub1->expects($this->any())->method('getKey')->will($this->returnValue('SIMPLE_ADDRESS_BOOK1')); $stub1->expects($this->any())->method('getDisplayName')->will($this->returnValue('Address book ownCloud Inc')); $stub1->expects($this->any())->method('search')->will($this->returnValue($searchResult1)); // setup return for method calls for $stub2 $stub2->expects($this->any())->method('getKey')->will($this->returnValue('SIMPLE_ADDRESS_BOOK2')); $stub2->expects($this->any())->method('getDisplayName')->will($this->returnValue('Address book ownCloud Community')); $stub2->expects($this->any())->method('search')->will($this->returnValue($searchResult2)); // register the address books OCP\Contacts::registerAddressBook($stub1); OCP\Contacts::registerAddressBook($stub2); $all_books = OCP\Contacts::getAddressBooks(); // assert the count - doesn't hurt $this->assertEquals(2, count($all_books)); // perform the search $result = OCP\Contacts::search('x', array()); // we expect 4 hits $this->assertEquals(4, count($result)); }
} }); return false; } }}); function split(val) { return val.split(/,\s*/); } function extractLast(term) { return split(term).pop(); } <?php if (OCP\Contacts::isEnabled()) { ?> $("#to") // don't navigate away from the field on tab when selecting an item .bind("keydown", function (event) { if (event.keyCode === $.ui.keyCode.TAB && $(this).data("autocomplete").menu.active) { event.preventDefault(); } }) .autocomplete({ source:function (request, response) { $.getJSON( OC.filePath('mail', 'ajax', 'receivers.php'), { term:extractLast(request.term)