%# BEGIN LICENSE BLOCK %# %# Copyright (c) 1996-2002 Jesse Vincent %# %# (Except where explictly superceded by other copyright notices) %# %# This work is made available to you under the terms of Version 2 of %# the GNU General Public License. A copy of that license should have %# been provided with this software, but in any event can be snarfed %# from www.gnu.org %# %# This work is distributed in the hope that it will be useful, but %# WITHOUT ANY WARRANTY; without even the implied warranty of %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU %# General Public License for more details. %# %# %# Unless otherwise specified, all modifications, corrections or %# extensions to this work which alter its source code become the %# property of Best Practical Solutions, LLC when submitted for %# inclusion in the work. %# %# %# END LICENSE BLOCK <& /Admin/Elements/Header, Title => $title &> <& /Admin/Elements/QueueTabs, id => $Queue, QueueObj => $WorkflowObj->QueueObj, current_tab => 'Admin/Queues/Workflows.html?id='.$Queue, current_subtab => $current_subtab, subtabs => $subtabs, Title => $title &> <& /Elements/ListActions, actions => \@results &> %if ($create ) { % } else { % } %# hang onto the queue id <& /Admin/Elements/ModifyWorkflow, URL => '/Admin/Queues/Workflow.html', %ARGS &> <& /Elements/Submit, Caption => loc("Be sure to save your changes"), Reset => 1 &> <%INIT> my $WorkflowObj = new RT::Template($session{'CurrentUser'}); my ($title, @results, $current_subtab); my $subtabs = { A => { title => loc('Select workflow'), path => "Admin/Queues/Workflows.html?id=$Queue" }, B => { title => loc('New workflow'), path => "Admin/Queues/Workflow.html?create=1&Queue=$Queue", separator => 1, } }; if ($create) { $title = loc("Create a workflow"); $current_subtab = "Admin/Queues/Workflow.html?create=1&Queue=".$Queue; } else { if ($Workflow eq 'new') { my ($val, $msg) = $WorkflowObj->create(Queue => $Queue, Name => $Name); Abort(loc("Could not create workflow: [_1]", $msg)) unless ($val); push @results, $msg; } else { $WorkflowObj->Load($Workflow) || Abort(loc('No Workflow')); } $title = loc('Modify workflow [_1]', loc($WorkflowObj->Name())); } if ($WorkflowObj->Id()) { $Queue = $WorkflowObj->Queue; my @attribs = qw( Description Content Queue Name); my @aresults = UpdateRecordObject( AttributesRef => \@attribs, Object => $WorkflowObj, ARGSRef => \%ARGS); $current_subtab = "Admin/Queues/Workflow.html?Queue=$Queue&Workflow=".$WorkflowObj->Id(); $subtabs->{"C"} = { title => loc('Workflow #[_1]', $WorkflowObj->Id()), path => "Admin/Queues/Workflow.html?Queue=$Queue&Workflow=".$WorkflowObj->Id(), }; push @results, @aresults; } <%ARGS> $Queue => undef $Workflow => undef $create => undef $Name => undef