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 + -
显示快捷键?