import of rt 3.0.9
[freeside.git] / rt / html / Ticket / Elements / EditCustomField
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 % my $Values;
25 % if ($TicketObj) {
26 %          $Values  = $TicketObj->CustomFieldValues($CustomField->id);
27 % }
28 % if ($CustomField->Type eq 'FreeformSingle') {
29       <input name="<%$NamePrefix%><%$CustomField->Id%>-Value"
30         size="<%$Cols%>"
31 % if ($TicketObj) {
32           value="<%$Values->Count ? $Values->First->Content : ''%>"
33 % } elsif ($Default) {
34           value="<%$Default ? $Default : ''%>"
35 % }
36 >
37 % } elsif ($CustomField->Type eq 'FreeformMultiple') {
38 % my $content;
39 % if ($TicketObj) {
40 %          while (my $value = $Values->Next ) {
41 %                 $content .= $value->Content;
42 %           }
43 % } elsif ($Default) {
44           value="<%$Default ? $Default : ''%>"
45 %  }
46 <input type="hidden" name="<%$NamePrefix%><%$CustomField->Id%>-Values-Magic" value="1">
47 <textarea cols=<%$Cols%> rows=<%$Rows%> name="<%$NamePrefix%><%$CustomField->Id%>-Values"><%$content%></textarea>
48 % } elsif ($CustomField->Type =~ /^Select/) {
49       <input type="hidden" name="<%$NamePrefix%><%$CustomField->Id%>-Values-Magic" value="1">
50       <select name="<%$NamePrefix%><%$CustomField->Id%>-Values"
51         size="<%$Rows%>"
52         <%$CustomField->Type eq 'SelectMultiple' && 'MULTIPLE'%>>
53 % my $CustomFieldValues = $CustomField->Values();
54 % my $selected;
55 % while (my $value = $CustomFieldValues->Next) {
56         <option value="<%$value->Name%>" 
57 % if ($TicketObj) {
58             <% $Values->HasEntry($value->Name) && ($selected = 1) && 'SELECTED' %>
59 % } elsif ($Default) {
60             <% ($Default eq $value->Name) && ($selected = 1) && 'SELECTED' %>
61 % }
62             ><% $value->Name%></option>
63 % }
64         <option value="" <% !$selected && 'SELECTED' %>><&|/l&>(no value)</&></option>
65       </select>
66 % }
67 <%ARGS>
68 $TicketObj => undef
69 $CustomField => undef
70 $NamePrefix => undef
71 $Rows => 5
72 $Cols=> 15
73 $Default => undef
74 </%ARGS>