⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ticketdisplay.php

📁 本代码是为客户联系管理而做的系统
💻 PHP
字号:
<?php
// +-------------------------------------------------------------+
// | DeskPRO v [2.0.1 Production]
// | Copyright (C) 2001 - 2004 Headstart Solutions Limited
// | Supplied by WTN-WDYL
// | Nullified by WTN-WDYL
// | Distribution via WebForum, ForumRU and associated file dumps
// +-------------------------------------------------------------+
// | DESKPRO IS NOT FREE SOFTWARE
// +-------------------------------------------------------------+
// | License ID : Full Enterprise License =) ...
// | License Owner : WTN-WDYL Team
// +-------------------------------------------------------------+
// | $RCSfile: ticketdisplay.php,v $
// | $Date: 2004/02/10 01:34:30 $
// | $Revision: 1.29 $
// +-------------------------------------------------------------+
// | File Details:
// | - Technician ticket display preferences
// +-------------------------------------------------------------+

error_reporting(E_ALL ^ E_NOTICE);

include "./../global.php";

tech_nav('settings');

// default do
$_REQUEST['do'] = trim($_REQUEST['do']);
if (!isset($_REQUEST['do']) or $_REQUEST['do'] == "") {
	$_REQUEST['do'] = "view";
}

############################### UNASSIGN FROM TICKETs ###############################

if ($_REQUEST['do'] == "unassign") {
	$db->query("SELECT id FROM ticket WHERE tech = '$user[id]'");
	while ($tlog = $db->row_array()) {
		ticketlog($tlog[id], 'tech', $user[id], 0);
	}
	$db->query("UPDATE ticket SET tech = '0' WHERE tech = '$user[id]' " . iff($_REQUEST[type], " AND is_open") . "");
	alert('Tickets unassigned');
	$_REQUEST['do'] = 'view';
}

############################### UPDATE SETTINGS ###############################

if ($_REQUEST['do'] == "update") {

	if (is_array($_REQUEST['fields']['default'])) {
		while (list ($key, $value) = each ($_REQUEST['fields']['default'])) {
			$field_array['default'][] = $key;
		}
	} else {
		$field_array['default'] = array();
	}

	if (is_array($_REQUEST['fields']['custom'])) {
		while (list ($key, $value) = each ($_REQUEST['fields']['custom'])) {
			$field_array['custom'][] = $key;
		}
	} else {
		$field_array['custom'] = array();
	}

	if (is_array($_REQUEST['fields']['admin'])) {
		while (list ($key, $value) = each ($_REQUEST['fields']['admin'])) {
			$field_array['admin'][] = $key;
		}
	} else {
		$field_array['admin'] = array();
	}

	if (is_array($_REQUEST['fields']['other'])) {
		while (list ($key, $value) = each ($_REQUEST['fields']['other'])) {
			$field_array['other'][] = $key;
		}
	} else {
		$field_array['other'] = array();
	}

	$fields = serialize($field_array);
	
	$db->query("UPDATE tech SET fielddisplay = '" . mysql_escape_string($fields) . "' WHERE id = $user[id]");
	$user = $db->query_return("SELECT * FROM tech WHERE id = '$user[id]'");
	$results = $db->query_return("SELECT results FROM search WHERE id = '$_REQUEST[saved_search]'");
	$results = explode(',', $results['results']);
	if ($_REQUEST['saved_search']) {
		if ($results[0]) {
			jump("../tickets/load_results.php?searchid=$_REQUEST[saved_search]&num=0&id=$results[0]", 'Options updated');
			exit;
		} else {
			jump("../tickets/search.php?do=basic", "Settings updated.");
			exit;
		}
	} else {
		$_REQUEST['do'] = "view";
	}
}

############################### VIEW SETTINGS ###############################

if ($_REQUEST['do'] == "view") {

	$tech = $db->query_return("SELECT fielddisplay FROM tech WHERE id = '$user[id]'");

	$fields = unserialize($tech[fielddisplay]);

	// if we have never set any settings then we need to use the same that we use in ticketsearch
	if (!is_array($fields)) {	$fields = unserialize($user[fielddisplay]);
		$fields = array(
			'default' => array('category', 'priority', 'email', 'techowner', 'timetech', 'timestart'),
			'admin' => array(),
			'custom' => array(),
			'other' => array('actions')
		);
	}

	// the default fields
	$table[] = table_midheader_noarray('Default Fields ' . thelp('Settings', 'Ticket Display'));

		$table[] = form_checkbox_single('openclosed', 1, @in_array('openclosed', $fields['default']), 'fields[default]') . " <b>Open / Closed</b>";
		$table[] = form_checkbox_single('awaitingtu', 1, @in_array('awaitingtu', $fields['default']), 'fields[default]') . " <b>Awaiting Tech / User</b>";
		$table[] = form_checkbox_single('category', 1, @in_array('category', $fields['default']), 'fields[default]') . " <b>Category</b>";
		$table[] = form_checkbox_single('priority', 1, @in_array('priority', $fields['default']), 'fields[default]') . " <b>Priority</b>";
		$table[] = form_checkbox_single('email', 1, @in_array('email', $fields['default']), 'fields[default]') . " <b>User/Email</b>";
		$table[] = form_checkbox_single('techowner', 1, @in_array('techowner', $fields['default']), 'fields[default]') . " <b>Tech Owner</b>";
		$table[] = form_checkbox_single('timetech', 1, @in_array('timetech', $fields['default']), 'fields[default]') . " <b>Time awaiting a tech reply</b>";
		$table[] = form_checkbox_single('timestart', 1, @in_array('timestart', $fields['default']), 'fields[default]') . " <b>Time since ticket created</b>";

	$db->query("SELECT id, display_name FROM ticket_def WHERE tech_viewable AND name LIKE 'custom%'");
	if ($db->num_rows()) {
		$table[] = table_midheader_noarray('Other Fields');
	}
	while ($user_def = $db->row_array()) {

		$user_def[display_name] = unserialize($user_def[display_name]);
		$user_def[display_name] = $user_def[display_name][$settings[default_language]];

		if (@in_array($user_def[id], $fields['custom'])) {
			$val = 1;
		} else {
			$val = 0;
		}

		$table[] = form_checkbox_single($user_def[id], 1, $val, 'fields[custom]') . " <b>$user_def[display_name]</b>";

	}

	// field definitions created by the admin
	$db->query("SELECT id, name, example FROM ticket_fielddisplay");
	if ($db->num_rows() > 0) {
		$table[] = table_midheader_noarray('Admin Created Fields');

		while ($result = $db->row_array()) {

			if (is_array($fields['admin'])) {
				if (in_array($result[id], $fields['admin'])) {
					$val = 1;
				} else {
					$val = 0;
				}
			} else { 
				$val = 0; 
			}

			$table[] = form_checkbox_single($result[id], 1, $val, 'fields[admin]') . " <b>$result[name]</b><br /><I>Example:</I> $result[example]";

		}

	}

	// some other options
	$table[] = table_midheader_noarray('Other Ticket Listing Options');
	$table[] = form_checkbox_single('actions', 1, @in_array('actions', $fields['other']), 'fields[other]') . " <b>Show Ticket Actions</b>" . form_hidden('saved_search', $_REQUEST['saved_search']);

	table_header('Select Fields to Display in Search Results', 'ticketdisplay.php', array('do' => 'update'));
	table_content('', $table);
	table_footer('Update Selections');

	echo "<hr><UL>";

	echo jprompt('Are you sure you want unassign yourself from all your tickets?', 'ticketdisplay.php?do=unassign', '<LI>Unassign myself from all my tickets</LI>', $danger=1);
	echo "<br /><br />";
	echo jprompt('Are you sure you want unassign yourself from all your open tickets?', 'ticketdisplay.php?do=unassign&type=open', '<LI>Unassign myself from my open tickets</LI>', $danger=1);
	echo "</UL><br />";

}

tech_footer();
?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -