/** * Search for contact * @param string Name of contact to search for * @param int ID of address book to search in * @return array Array of Default_Model_Contact */ public function search($name = null, $addressBook = null) { if (isset($addressBook) && !empty($addressBook)) { if (isset($name) && !empty($name)) { // search for name and address book return $this->getMapper()->findByName($name, $addressBook); } else { // search for address book $model = new Default_Model_AddressBook(); return $model->getContacts($addressBook); } } else { if (isset($name) && !empty($name)) { // search for name return $this->getMapper()->findByName($name); } else { // search for all contacts return $this->fetchAll(); } } }