} } } // Form data are not valid } else { $display['msg'] = display_warn_msg($l_invalid_data . ' : ' . $err['msg']); $display['detail'] = dis_company_form($action, $params); } } elseif ($action == 'update') { /////////////////////////////////////////////////////////////////////////////// if (check_user_defined_rules() && check_company_data_form($params['company_id'], $params)) { $retour = run_query_company_update($params['company_id'], $params); if ($retour) { $addressbooks = OBM_AddressBook::search(); $contacts = $addressbooks->searchContacts("companyId:$params[company_id]"); foreach($contacts as $contact) { OBM_Contact::solrStore($contact); } OBM_IndexingService::commit('contact'); $display['msg'] .= display_ok_msg("$l_company : $l_update_ok"); } else { $display['msg'] .= display_err_msg("$l_company : $l_update_error"); } $display['detail'] = dis_company_consult($params); } else { $display['msg'] .= display_warn_msg($l_invalid_data . ' : ' . $err['msg']); $display['detail'] = dis_company_form($action, $params); }
/** * Perform the import of the contacts */ function user_contacts_import($vcf_contacts, $user_id) { include_once 'php/contact/addressbook.php'; include_once 'php/contact/contact_query.inc'; $remember_uid = $GLOBALS['obm']['uid']; $GLOBALS['obm']['uid'] = $user_id; // some kind of sudo $user_id $addressbooks = OBM_AddressBook::search(); $addressBookByName = array(); foreach ($addressbooks as $addressbook) { if ($addressbook->name != 'public_contacts') { // I'd better filter this addressbook on search if ($addressbook->isDefault || isset($vcf_contacts[$addressbook->name])) { $addressbook->reset(); $addressBookByName[$addressbook->name] = $addressbook; } else { OBM_AddressBook::delete(array('addressbook_id' => $addressbook->id)); } } } foreach ($vcf_contacts as $addBookName => $fd) { if (isset($addressBookByName[$addBookName])) { $addressbook = $addressBookByName[$addBookName]; } else { $addressbook = OBM_AddressBook::create(array('name' => $addBookName)); } if ($fd && $addressbook->write) { $ids = run_query_vcard_insert(array('vcard_fd' => $fd), $addressbook); } } $GLOBALS['obm']['uid'] = $remember_uid; }