diff options
Diffstat (limited to 'rt/html/Admin/CustomFields/Modify.html')
-rw-r--r-- | rt/html/Admin/CustomFields/Modify.html | 82 |
1 files changed, 64 insertions, 18 deletions
diff --git a/rt/html/Admin/CustomFields/Modify.html b/rt/html/Admin/CustomFields/Modify.html index 4c3c92114..0202f0ad6 100644 --- a/rt/html/Admin/CustomFields/Modify.html +++ b/rt/html/Admin/CustomFields/Modify.html @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,7 +22,9 @@ %# %# You should have received a copy of the GNU General Public License %# along with this program; if not, write to the Free Software -%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +%# 02110-1301 or visit their web page on the internet at +%# http://www.gnu.org/copyleft/gpl.html. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -51,15 +53,15 @@ <& /Elements/ListActions, actions => \@results &> -<FORM METHOD="POST" ACTION="Modify.html" NAME="ModifyCustomField"> -<INPUT TYPE=HIDDEN NAME="id" VALUE="<%$id %>"> +<form method="post" action="Modify.html" name="ModifyCustomField"> +<input type="hidden" class="hidden" name="id" value="<%$id %>" /> <table> <tr> <td class="label"><&|/l&>Name</&></td> -<td><input name="Name" VALUE="<%$CustomFieldObj->Name%>" SIZE=20></td></tr> +<td><input name="Name" value="<%$CustomFieldObj->Name%>" size="20" /></td></tr> <tr> <td class="label"><&|/l&>Description</&></td> -<td><input name="Description" VALUE="<%$CustomFieldObj->Description%>" SIZE=80></td> +<td><input name="Description" value="<%$CustomFieldObj->Description%>" size="80" /></td> </tr> <tr> @@ -77,23 +79,64 @@ </td> </tr> <tr> +<td class="label"><&|/l&>Validation</&></td> +<td> +<& /Widgets/ComboBox, + Name => 'Pattern', + Default => $CustomFieldObj->Pattern, + Size => 20, + Values => [ + '(?#Mandatory).', + '(?#Digits)^[\d.]+$', + '(?#Year)^[12]\d{3}$', + ], +&> +</td></tr> +</tr> +<tr> <td class="label"> </td> <td> -<INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1"> -<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this custom field)</&> +<input type="hidden" class="hidden" name="SetEnabled" value="1" /> +<input type="checkbox" class="checkbox" name="Enabled" value="1" <%$EnabledChecked%> /> <&|/l&>Enabled (Unchecking this box disables this custom field)</&> +</td> +</tr> +<tr> +<td class="label"><&|/l&>Link values to</&></td> +</td> +<td><input size="60" name="LinkValueTo" value="<%$CustomFieldObj->LinkValueTo%>" /> +<div class="hints"> +<&|/l&>RT can make this custom field's values into hyperlinks to another service.</&> +<&|/l&>Fill in this field with a URL.</&> +<&|/l&>RT will replace <tt>__id__</tt> and <tt>__CustomField__</tt> with the record id and custom field value, respectively</&> +</div> </td> </tr> +<tr> +<td class="label"><&|/l&>Include page</&></td> +</td> +<td><input size="60" name="IncludeContentForValue" value="<%$CustomFieldObj->IncludeContentForValue%>" /> +<div class="hints"> +<&|/l&>RT can include content from another web service when showing this custom field.</&> +<&|/l&>Fill in this field with a URL.</&> +<&|/l&>RT will replace <tt>__id__</tt> and <tt>__CustomField__</tt> with the record id and custom field value, respectively</&> +<i><&|/l&>Some browsers may only load content from the same domain as your RT server.</&></i> +</div> +</td> +</tr> + + + </table> -<BR> -% if ($CustomFieldObj->Id && $CustomFieldObj->Type =~ /^Select/i) { -<H2><&|/l&>Values</&></H2> +<br /> +% if ($CustomFieldObj->Id && $CustomFieldObj->IsSelectionType) { +<h2><&|/l&>Values</&></h2> <div> <& /Admin/Elements/EditCustomFieldValues, CustomField => $CustomFieldObj &> <& /Admin/Elements/AddCustomFieldValue, CustomField => $CustomFieldObj &> </div> % } <&/Elements/Submit&> -</FORM> +</form> @@ -115,7 +158,8 @@ else { my ( $val, $msg ) = $CustomFieldObj->Create(Name => $Name, TypeComposite => $TypeComposite, LookupType => $LookupType, - Description => $Description,); + Description => $Description, + Pattern => $Pattern,); $m->comp("/Elements/Error", Why => loc( "Could not create CustomField", $msg ) ) unless ($val); push @results, $msg; $title = loc( 'Created CustomField [_1]', $CustomFieldObj->Name() ); @@ -124,7 +168,7 @@ else { $CustomFieldObj->Load($id) || $m->comp("/Elements/Error", Why => loc('No CustomField') ); $title = loc( 'Editing CustomField [_1]', $CustomFieldObj->Name() ); - my @attribs = qw( Name TypeComposite LookupType Description); + my @attribs = qw( Pattern Name TypeComposite LookupType Description LinkValueTo IncludeContentForValue); my @aresults = UpdateRecordObject( AttributesRef => \@attribs, Object => $CustomFieldObj, ARGSRef => \%ARGS ); @@ -167,7 +211,7 @@ foreach my $key (keys %ARGS) { # Update any existing values my $values = $CustomFieldObj->ValuesObj; while (my $value = $values->Next) { - foreach my $attr qw(Name Description SortOrder) { + foreach my $attr qw(Name Description SortOrder Category) { my $param = $paramtag.$value->Id."-".$attr; if ( $ARGS{$param} && ($value->$attr() ne $ARGS{$param})) { @@ -184,9 +228,10 @@ while (my $value = $values->Next) { # Add any new values if ($ARGS{$paramtag."new-Name"}) { - my ($id, $msg) = $CustomFieldObj->AddValue ( Name => $ARGS{$paramtag."new-Name"}, - Description => $ARGS{$paramtag."new-Description"}, - SortOrder => $ARGS{$paramtag."new-SortOrder"}); + my ($id, $msg) = $CustomFieldObj->AddValue ( + map { $_ => $ARGS{$paramtag."new-$_"} } + qw( Name Description SortOrder Category ) + ); push (@results, $msg); } @@ -206,6 +251,7 @@ $LookupType => undef $MaxValues => undef $SortOrder => undef $Description => undef +$Pattern => undef $Name => undef $SetEnabled => undef $Enabled => undef |