import rt 3.0.12
[freeside.git] / rt / html / Admin / Elements / EditTemplates
1 %# BEGIN LICENSE BLOCK
2 %# 
3 %# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
4 %# 
5 %# (Except where explictly superceded by other copyright notices)
6 %# 
7 %# This work is made available to you under the terms of Version 2 of
8 %# the GNU General Public License. A copy of that license should have
9 %# been provided with this software, but in any event can be snarfed
10 %# from www.gnu.org.
11 %# 
12 %# This work is distributed in the hope that it will be useful, but
13 %# WITHOUT ANY WARRANTY; without even the implied warranty of
14 %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 %# General Public License for more details.
16 %# 
17 %# Unless otherwise specified, all modifications, corrections or
18 %# extensions to this work which alter its source code become the
19 %# property of Best Practical Solutions, LLC when submitted for
20 %# inclusion in the work.
21 %# 
22 %# 
23 %# END LICENSE BLOCK
24 <& /Elements/ListActions, actions => \@actions &>
25
26 <FORM METHOD=GET ACTION="Templates.html">
27 <INPUT TYPE="Hidden" NAME="id" VALUE="<%$id%>">
28
29 % if ($Templates->Count == 0 ) {
30 <P><i><&|/l&>(No templates)</&></i></P>
31 % } else {
32 <TABLE>
33 <TR>
34 <TH>
35 <i><&|/l&>(Check box to delete)</&></i>
36 </TH>
37 <TH>
38 </TH>
39 </TR>
40 % my $count;
41 % while (my $TemplateObj = $Templates->Next) { 
42 <TR>
43 <TD>
44 <input type="checkbox" name="DeleteTemplate-<%$TemplateObj->Id%>">
45 </TD>
46 <TD>
47 <A HREF="Template.html?Queue=<%$id%>&Template=<%$TemplateObj->id()%>">
48 <B><% loc($TemplateObj->Name) %></B></A>
49 <br><% loc($TemplateObj->Description) %>
50 </TD>
51 </TR>
52
53 % }
54 </TABLE>
55 % }
56
57 <& /Elements/Submit, Label => loc('Delete Template') &>
58 </FORM>
59
60 <%INIT>
61 my $Templates = RT::Templates->new($session{'CurrentUser'});
62 my $QueueObj = RT::Queue->new($session{'CurrentUser'});
63 my @actions;
64
65 if ($id)  {
66         $QueueObj->Load($id);                        
67 }
68
69 if ($QueueObj->id) {
70         $Templates->LimitToQueue($id);
71 }                                            
72 else {                                       
73         $Templates->LimitToGlobal();
74 }                                           
75
76 # Now let callbacks add their extra limits
77 $m->comp('/Elements/Callback', Templates => $Templates, %ARGS);
78
79 # {{{ deal with deleting existing templates
80 foreach my $key (keys %ARGS) {
81   # {{{ if we're trying to delete the template
82   if ($key =~ /^DeleteTemplate-(\d+)/) {
83     my $id = $1;
84     my $TemplateObj = RT::Template->new($session{'CurrentUser'});
85     $TemplateObj->Load($id);
86     my ($retval, $msg) = $TemplateObj->Delete;
87     if ($retval) {
88       push @actions, loc("Template deleted");
89     }
90     else {
91       push @actions, $msg;
92     }
93   }
94   # }}}
95 }
96 # }}}
97 </%INIT>
98 <%ARGS>
99 $id => 0
100 $title => undef
101 $Move => undef
102 $Source => undef
103 $Template => undef
104 </%ARGS>