contact.php
来自「groupoffice」· PHP 代码 · 共 632 行 · 第 1/2 页
PHP
632 行
<?php/** * @copyright Intermesh 2003 * @author Merijn Schering <mschering@intermesh.nl> * @version $Revision: 1.126 $ $Date: 2006/04/10 13:21:11 $ * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. */require_once ("../../Group-Office.php");$GO_SECURITY->authenticate();$GO_MODULES->authenticate('addressbook');require_once ($GO_LANGUAGE->get_language_file('addressbook'));$page_title = $contact_profile;require_once ($GO_MODULES->class_path."addressbook.class.inc");$ab = new addressbook();$task = isset ($_REQUEST['task']) ? $_REQUEST['task'] : '';$return_to = (isset ($_REQUEST['return_to']) && $_REQUEST['return_to'] != '') ? $_REQUEST['return_to'] : $_SERVER['HTTP_REFERER'];$link_back = (isset ($_REQUEST['link_back']) && $_REQUEST['link_back'] != '') ? $_REQUEST['link_back'] : $_SERVER['REQUEST_URI'];$contact_id = isset ($_REQUEST['contact_id']) ? $_REQUEST['contact_id'] : '0';$vcf_file = isset ($_REQUEST['vcf_file']) ? $_REQUEST['vcf_file'] : '';if (isset ($_REQUEST['popup'])) { $popup = true; $return_to = 'javascript:window.close();';} else { $popup = false;}$ab_settings = $ab->get_settings($GO_SECURITY->user_id);$addressbook_id = $contact['addressbook_id'] = isset($_REQUEST['addressbook_id']) ? $_REQUEST['addressbook_id'] : $ab_settings['addressbook_id'];if($addressbook_id == 0){ $addressbook = $ab->get_addressbook(); $addressbook_id = $addressbook['id'];}if($ab_settings['addressbook_id'] != $addressbook_id){ $ab_settings['addressbook_id'] = $addressbook_id; $ab->update_settings($ab_settings);}$templates_plugin = $GO_MODULES->get_plugin('templates');if ($templates_plugin) { require_once ($templates_plugin['class_path'].'templates.class.inc'); $tp = new templates();}$vcard_count = 0;if (!empty ($vcf_file)) { require_once ($GO_MODULES->class_path."vcard.class.inc"); $vcard = new vcard(); $vcard_count = $vcard->get_count($vcf_file); if ($vcard_count > 0) { if ($record = $vcard->get_vcard_contact(0)) { $company = $record['company']; } }}$require = 'edit_contact.inc';switch ($task) { case 'activate_linking': $link_contact = $ab->get_contact($contact_id); $link_id = $link_contact['link_id']; if(empty($link_contact['link_id'])) { $update_contact['id'] = $contact_id; $update_contact['link_id'] = $link_id = $GO_LINKS->get_link_id(); $ab->update_contact($update_contact); } $GO_LINKS->activate_linking($link_id, 2, format_name($link_contact['last_name'], $link_contact['first_name'], $link_contact['middle_name']), $link_back); if(!empty($_REQUEST['goto_url'])) { header('Location: '.$_REQUEST['goto_url']); exit(); } break; case 'create_link': if($link = $GO_LINKS->get_active_link()) { $link_contact = $ab->get_contact($contact_id); $link_id = $link_contact['link_id']; if(empty($link_contact['link_id'])) { $update_contact['id'] = $contact_id; $update_contact['link_id'] = $link_id = $GO_LINKS->get_link_id(); $ab->update_contact($update_contact); } $GO_LINKS->add_link($link['id'], $link['type'], $link_id, 2); $GO_LINKS->deactivate_linking(); header('Location: '.$link['return_to']); exit(); } break; case 'save' : $contact['first_name'] = isset ($_REQUEST['first_name']) ? smart_addslashes($_REQUEST['first_name']) : ''; $contact['middle_name'] = isset ($_REQUEST['middle_name']) ? smart_addslashes($_REQUEST['middle_name']) : ''; $contact['last_name'] = isset ($_REQUEST['last_name']) ? smart_addslashes($_REQUEST['last_name']) : ''; $contact['initials'] = isset ($_REQUEST['initials']) ? smart_addslashes($_REQUEST['initials']) : ''; $contact['title'] = isset ($_REQUEST['title']) ? smart_addslashes($_REQUEST['title']) : ''; $contact['sex'] = isset ($_REQUEST['sex']) ? smart_addslashes($_REQUEST['sex']) : 'M'; $contact['birthday'] = isset ($_REQUEST['birthday']) ? date_to_db_date(smart_addslashes($_POST['birthday'])) : ''; $contact['email'] = isset ($_REQUEST['email']) ? smart_addslashes($_REQUEST['email']) : ''; $contact['email2'] = isset ($_REQUEST['email2']) ? smart_addslashes($_REQUEST['email2']) : ''; $contact['email3'] = isset ($_REQUEST['email3']) ? smart_addslashes($_REQUEST['email3']) : ''; $contact['work_phone'] = isset ($_REQUEST['work_phone']) ? smart_addslashes($_REQUEST['work_phone']) : ''; $contact['home_phone'] = isset ($_REQUEST['home_phone']) ? smart_addslashes($_REQUEST['home_phone']) : ''; $contact['fax'] = isset ($_REQUEST['fax']) ? smart_addslashes($_REQUEST['fax']) : ''; $contact['work_fax'] = isset ($_REQUEST['work_fax']) ? smart_addslashes($_REQUEST['work_fax']) : ''; $contact['cellular'] = isset ($_REQUEST['cellular']) ? smart_addslashes($_REQUEST['cellular']) : ''; $contact['country'] = isset ($_REQUEST['country']) ? smart_addslashes($_REQUEST['country']) : ''; $contact['state'] = isset ($_REQUEST['state']) ? smart_addslashes($_REQUEST['state']) : ''; $contact['address'] = isset ($_REQUEST['address']) ? smart_addslashes($_REQUEST['address']) : ''; $contact['address_no'] = isset ($_REQUEST['address_no']) ? smart_addslashes($_REQUEST['address_no']) : ''; $contact['city'] = isset ($_REQUEST['city']) ? smart_addslashes($_REQUEST['city']) : ''; $contact['zip'] = isset ($_REQUEST['zip']) ? smart_addslashes($_REQUEST['zip']) : ''; $contact['company_id'] = $_POST['company_id']['value']; if ($contact['zip'] != '' && $contact['address'] == '' && $contact['city'] == '' && $contact['state'] == '' && $contact['country'] == '' && $addressinfo = $ab->get_addressinfo($contact['zip'])) { $contact['address'] = addslashes($addressinfo['street']); $contact['city'] = addslashes($addressinfo['city']); $contact['state'] = addslashes($addressinfo['state']); $contact['country'] = addslashes($addressinfo['country']); } $contact['department'] = isset ($_REQUEST['department']) ? smart_addslashes($_REQUEST['department']) : ''; $contact['function'] = isset ($_REQUEST['function']) ? smart_addslashes($_REQUEST['function']) : ''; $contact['comment'] = isset ($_REQUEST['comment']) ? smart_addslashes($_REQUEST['comment']) : ''; $contact['color'] = isset ($_REQUEST['color']) ? smart_addslashes($_REQUEST['color']) : '000000'; $contact['source_id'] = isset ($_REQUEST['source_id']) ? $_REQUEST['source_id'] : ''; $contact['group_id'] = isset ($_REQUEST['group_id']) ? $_REQUEST['group_id'] : ''; $contact['company_id'] = isset ($contact['company_id']) ? $contact['company_id'] : 0; if ($contact['first_name'] == '' && $contact['last_name'] == '') { $feedback = $error_missing_field; } else { //translate the given birthdayto gmt unix time if ($contact_id > 0) { $contact['id'] = $contact_id; if ($ab->update_contact($contact)) { if ($_POST['close'] == 'true') { if ($popup) { echo '<script type="text/javascript">window.close()</script>'; } else { if (isset ($_REQUEST['return_contact_id'])) { $return_to = add_params_to_url($return_to, 'contact_id='.$_REQUEST['contact_id']); } if($return_to != 'javascript:window.close();') { header('Location: '.$return_to); }else { echo '<script type="text/javascript">'. 'window.close();</script>'; } } exit (); } } else { $feedback = $strSaveError; } } elseif (!isset($_POST['ignore']) && $existing_contact_id = $ab->check_contact($GO_SECURITY->user_id, $contact)) { $link = '<a href="contact.php?return_to='.urlencode($return_to).'&contact_id='.$existing_contact_id.'">'.$ab_here.'</a>'; $feedback = sprintf($ab_contact_exists, $link); $ignore = true; } else { $contact['user_id'] = $GO_SECURITY->user_id; if ($contact_id = $ab->add_contact($contact)) { $link_back .= '&contact_id='.$contact_id; if ($_POST['close'] == 'true') { if ($popup) { echo '<script type="text/javascript">'. 'window.close();</script>'; } else { if (isset ($_REQUEST['return_contact_id'])) { $return_to = add_params_to_url($return_to, 'contact_id='.$contact_id); } if($return_to != 'javascript:window.close();') { header('Location: '.$return_to); }else { echo '<script type="text/javascript">'. 'window.close();</script>'; } } exit (); } } else { $feedback = $strSaveError; } } } break; /*case 'save_custom_fields' : if (isset ($_POST['fields'])) { require_once ($custom_fields_plugin['class_path'].'custom_fields.class.inc'); $cf = new custom_fields('ab_custom_contact_fields'); $cf->update_record($contact_id, $_POST['fields'], $_POST['values']); if ($_POST['close'] == 'true') { if ($popup) { echo '<script type="text/javascript">window.close()</script>'; } else { if (isset ($_REQUEST['return_contact_id'])) { $return_to = add_params_to_url($return_to, 'contact_id='.$_REQUEST['contact_id']); } if($return_to != 'javascript:window.close();') { header('Location: '.$return_to); }else { echo '<script type="text/javascript">'. 'window.close();</script>'; } } exit (); } } break;*/ case 'save_custom_fields': require_once($GO_MODULES->modules['custom_fields']['class_path'].'custom_fields.class.inc'); $cf = new custom_fields(); $cf->save_fields($_POST['contact_tabstrip_'.$contact_id], $_POST['link_id']); if ($_POST['close'] == 'true') { if ($popup) { echo '<script type="text/javascript">window.close()</script>'; } else { if (isset ($_REQUEST['return_contact_id'])) { $return_to = add_params_to_url($return_to, 'contact_id='.$_REQUEST['contact_id']); } if($return_to != 'javascript:window.close();') { header('Location: '.$return_to); }else { echo '<script type="text/javascript">'. 'window.close();</script>'; } } exit(); } break; case 'save_mailing_groups' : $tp->remove_contact_from_mailing_groups($contact_id); if (isset ($_POST['mailing_groups'])) { while ($mailing_group_id = array_shift($_POST['mailing_groups'])) { $tp->add_contact_to_mailing_group($contact_id, $mailing_group_id); } } if ($_POST['close'] == 'true') { if ($popup) { echo '<script type="text/javascript">window.close()</script>'; } else { if (isset ($_REQUEST['return_contact_id'])) { $return_to = add_params_to_url($return_to, 'contact_id='.$_REQUEST['contact_id']); } header('Location: '.$return_to); } exit (); } break; case 'start_timer' : $active_tab = 'links'; break;}if ($contact_id > 0) { $contact = $ab->get_contact($contact_id); if(empty($contact['link_id'])) { $update_contact['id'] = $contact_id; $update_contact['link_id'] = $contact['link_id']= $GO_LINKS->get_link_id(); $ab->update_contact($update_contact); } $write_permission = $GO_SECURITY->has_permission($GO_SECURITY->user_id, $contact["acl_write"]);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?