/usr/share/horde/whups/ticket/queue.php is in php-horde-whups 3.0.9-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | <?php
/**
* Displays and handles the form to move a ticket to a different queue.
*
* Copyright 2001-2002 Robert E. Coyle <robertecoyle@hotmail.com>
* Copyright 2001-2016 Horde LLC (http://www.horde.org/)
*
* See the enclosed file LICENSE for license information (BSD). If you
* did not receive this file, see http://www.horde.org/licenses/bsdl.php.
*/
require_once __DIR__ . '/../lib/Application.php';
Horde_Registry::appInit('whups');
$ticket = Whups::getCurrentTicket();
$page_output->addLinkTag($ticket->feedLink());
$vars = Horde_Variables::getDefaultVariables();
$vars->set('id', $id = $ticket->getId());
$form = $vars->get('formname');
if ($form != 'whups_form_queue_stepone') {
$q = $vars->get('queue');
$v = $vars->get('version');
$t = $vars->get('type');
}
Whups::addTopbarSearch();
// Get all ticket details from storage, then override any values that are
// in the process of being edited.
foreach ($ticket->getDetails() as $varname => $value) {
$vars->add($varname, $value);
}
if (!empty($q)) {
$vars->set('queue', $q);
}
if (!empty($v)) {
$vars->set('version', $v);
}
if (!empty($t)) {
$vars->set('type', $t);
}
// Check permissions on this ticket.
if (!Whups::hasPermission($ticket->get('queue'), 'queue', Horde_Perms::DELETE)) {
$notification->push(_("Permission Denied"), 'horde.error');
Horde::url($prefs->getValue('whups_default_view') . '.php', true)
->redirect();
}
$action = '';
if ($form == 'whups_form_queue_stepone') {
$setqueueform = new Whups_Form_Queue_StepOne($vars);
if ($setqueueform->validate($vars)) {
$action = 'sq2';
}
}
if ($form == 'whups_form_queue_steptwo') {
$setqueueform = new Whups_Form_Queue_StepTwo($vars);
if ($setqueueform->validate($vars)) {
$action = 'sq3';
} else {
$action = 'sq2';
}
}
if ($form == 'whups_form_queue_stepthree') {
$smform3 = new Whups_Form_Queue_StepThree($vars);
if ($smform3->validate($vars)) {
$smform3->getInfo($vars, $info);
$ticket->change('queue', $info['queue']);
$ticket->change('type', $info['type']);
$ticket->change('state', $info['state']);
$ticket->change('priority', $info['priority']);
if (!empty($info['version'])) {
$ticket->change('version', $info['version']);
}
if (!empty($info['newcomment'])) {
$ticket->change('comment', $info['newcomment']);
}
if (!empty($info['group'])) {
$ticket->change('comment-perms', $info['group']);
}
try {
$ticket->commit();
$notification->push(
sprintf(_("Moved ticket %d to \"%s\""), $id, $ticket->get('queue_name')),
'horde.success');
$ticket->show();
} catch (Whups_Exception $e) {
$notification->push($e, 'horde.error');
}
} else {
$action = 'sq3';
}
}
$page_output->header(array(
'title' => sprintf(_("Set Queue for %s"), '[#' . $id . '] ' . $ticket->get('summary'))
));
$notification->notify(array('listeners' => 'status'));
require WHUPS_TEMPLATES . '/prevnext.inc';
$tabs = Whups::getTicketTabs($vars, $id);
echo $tabs->render('queue');
$r = new Horde_Form_Renderer();
switch ($action) {
case 'sq2':
$form1 = new Whups_Form_Queue_StepOne($vars, _("Set Queue - Step 1"));
$form2 = new Whups_Form_Queue_StepTwo($vars, _("Set Queue - Step 2"));
$form1->renderInactive($r, $vars);
echo '<br />';
$form2->renderActive($r, $vars, Horde::url('ticket/queue.php'), 'post');
break;
case 'sq3':
$form1 = new Whups_Form_Queue_StepOne($vars, _("Set Queue - Step 1"));
$form2 = new Whups_Form_Queue_StepTwo($vars, _("Set Queue - Step 2"));
$form3 = new Whups_Form_Queue_StepThree($vars, _("Set Queue - Step 3"));
$form1->renderInactive($r, $vars);
echo '<br />';
$form2->renderInactive($r, $vars);
echo '<br />';
$form3->renderActive($r, $vars, Horde::url('ticket/queue.php'), 'post');
break;
default:
$form1 = new Whups_Form_Queue_StepOne($vars, _("Set Queue - Step 1"));
$form1->renderActive($r, $vars, Horde::url('ticket/queue.php'), 'post');
break;
}
$page_output->footer();
|