Newer
Older
if (!defined('OSTSCPINC')
|| !$ticket
|| !($ticket->checkStaffPerm($thisstaff, Ticket::PERM_EDIT)))
$info=Format::htmlchars(($errors && $_POST)?$_POST:$ticket->getUpdateInfo());
// Reformat duedate to the display standard (but don't convert to local
// timezone)
$info['duedate'] = Format::date(strtotime($info['duedate']), false, false, 'UTC');
<form action="tickets.php?id=<?php echo $ticket->getId(); ?>&a=edit" method="post" class="save" enctype="multipart/form-data">
Nathan Febuary
committed
<?php csrf_token(); ?>
<input type="hidden" name="do" value="update">
<input type="hidden" name="a" value="edit">
<input type="hidden" name="id" value="<?php echo $ticket->getId(); ?>">
<div style="margin-bottom:20px; padding-top:5px;">
<div class="pull-left flush-left">
<h2><?php echo sprintf(__('Update Ticket #%s'),$ticket->getNumber());?></h2>
</div>
</div>
<table class="form_table" width="940" border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<th colspan="2">
<em><strong><?php echo __('User Information'); ?></strong>: <?php echo __('Currently selected user'); ?></em>
</th>
</tr>
<?php
if(!$info['user_id'] || !($user = User::lookup($info['user_id'])))
$user = $ticket->getUser();
<div id="client-info">
<a href="#" onclick="javascript:
$.userLookup('ajax.php/users/<?php echo $ticket->getOwnerId(); ?>/edit',
function (user) {
$('#client-name').text(user.name);
$('#client-email').text(user.email);
});
return false;
"><i class="icon-user"></i>
<span id="client-name"><?php echo Format::htmlchars($user->getName()); ?></span>
<<span id="client-email"><?php echo $user->getEmail(); ?></span>>
</a>
<a class="inline action-button" style="overflow:inherit" href="#"
onclick="javascript:
$.userLookup('ajax.php/tickets/<?php echo $ticket->getId(); ?>/change-user',
function(user) {
$('input#user_id').val(user.id);
$('#client-name').text(user.name);
$('#client-email').text('<'+user.email+'>');
});
return false;
"><i class="icon-edit"></i> <?php echo __('Change'); ?></a>
<input type="hidden" name="user_id" id="user_id"
value="<?php echo $info['user_id']; ?>" />
</div>
<em><strong><?php echo __('Ticket Information'); ?></strong>: <?php echo __("Due date overrides SLA's grace period."); ?></em>
</th>
</tr>
<tr>
<td width="160" class="required">
<?php echo __('Ticket Source');?>:
<option value="" selected >— <?php
echo __('Select Source');?> —</option>
<?php
$source = $info['source'] ?: 'Phone';
foreach (Ticket::getSources() as $k => $v) {
echo sprintf('<option value="%s" %s>%s</option>',
$k,
($source == $k ) ? 'selected="selected"' : '',
$v);
}
?>
<font class="error"><b>*</b> <?php echo $errors['source']; ?></font>
</td>
</tr>
<tr>
<td width="160" class="required">
<?php echo __('Help Topic');?>:
<option value="" selected >— <?php echo __('Select Help Topic');?> —</option>
if($ticket->topic_id && !array_key_exists($ticket->topic_id, $topics)) {
$topics[$ticket->topic_id] = $ticket->topic;
$errors['topicId'] = sprintf(__('%s selected must be active'), __('Help Topic'));
foreach($topics as $id =>$name) {
echo sprintf('<option value="%d" %s>%s</option>',
$id, ($info['topicId']==$id)?'selected="selected"':'',$name);
}
}
?>
</select>
if (!$info['topicId'] && $cfg->requireTopicToClose()) {
?><i class="icon-warning-sign help-tip warning"
data-title="<?php echo __('Required to close ticket'); ?>"
data-content="<?php echo __('Data is required in this field in order to close the related ticket'); ?>"
></i><?php
} ?>
<font class="error"><b>*</b> <?php echo $errors['topicId']; ?></font>
<tr>
<td width="160">
<option value="0" selected="selected" >— <?php echo __('None');?> —</option>
<?php
if($slas=SLA::getSLAs()) {
foreach($slas as $id =>$name) {
echo sprintf('<option value="%d" %s>%s</option>',
$id, ($info['slaId']==$id)?'selected="selected"':'',$name);
}
}
?>
</select>
<font class="error"> <?php echo $errors['slaId']; ?></font>
<input class="dp" id="duedate" name="duedate" value="<?php echo Format::htmlchars($info['duedate']); ?>" size="12" autocomplete=OFF>
<?php
$min=$hr=null;
if($info['time'])
<font class="error"> <?php echo $errors['duedate']; ?> <?php echo $errors['time']; ?></font>
<em><?php echo __('Time is based on your time zone');?>
(<?php echo $cfg->getTimezone($thisstaff); ?>)</em>
</tbody>
</table>
<table class="form_table dynamic-forms" width="940" border="0" cellspacing="0" cellpadding="2">
<?php if ($forms)
foreach ($forms as $form) {
$form->render(true, false, array('mode'=>'edit','width'=>160,'entry'=>$form));
</table>
<table class="form_table" width="940" border="0" cellspacing="0" cellpadding="2">
<tbody>
<em><strong><?php echo __('Internal Note');?></strong>: <?php echo __('Reason for editing the ticket (optional)');?> <font class="error"> <?php echo $errors['note'];?></font></em>
<td colspan="2">
<textarea class="richtext no-bar" name="note" cols="21"
rows="6" style="width:80%;"><?php echo $info['note'];
?></textarea>
Nathan Febuary
committed
<p style="text-align:center;">
<input type="submit" name="submit" value="<?php echo __('Save');?>">
<input type="reset" name="reset" value="<?php echo __('Reset');?>">
<input type="button" name="cancel" value="<?php echo __('Cancel');?>" onclick='window.location.href="tickets.php?id=<?php echo $ticket->getId(); ?>"'>
<div style="display:none;" class="dialog draggable" id="user-lookup">
<div class="body"></div>
</div>
<script type="text/javascript">
+(function() {
var I = setInterval(function() {
if (!$.fn.sortable)
return;
clearInterval(I);
$('table.dynamic-forms').sortable({
items: 'tbody',
handle: 'th',
helper: function(e, ui) {
ui.children().each(function() {
$(this).children().each(function() {
$(this).width($(this).width());
});
});
ui=ui.clone().css({'background-color':'white', 'opacity':0.8});
return ui;
}