X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FTicket%2FElements%2FEditCustomFields;h=35fa952692c6975bff70bb44efa37369184dc59a;hb=187086c479a09629b7d180eec513fb7657f4e291;hp=918f4d4f571392177f605be1cd719e6d9cbefc1d;hpb=75162bb14b3e38d66617077843f4dfdcaf09d5c4;p=freeside.git diff --git a/rt/share/html/Ticket/Elements/EditCustomFields b/rt/share/html/Ticket/Elements/EditCustomFields index 918f4d4f5..35fa95269 100755 --- a/rt/share/html/Ticket/Elements/EditCustomFields +++ b/rt/share/html/Ticket/Elements/EditCustomFields @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2018 Best Practical Solutions, LLC %# %# %# (Except where explicitly superseded by other copyright notices) @@ -45,72 +45,32 @@ %# those contributions and any derivatives thereof. %# %# END BPS TAGGED BLOCK }}} -% $m->callback( %ARGS, CallbackName => 'BeforeCustomFields' ); - -% my $i = 0; -% while ( my $CustomField = $CustomFields->Next ) { -% next unless $CustomField->CurrentUserHasRight('ModifyCustomField'); -% my $escaped_name = lc $CustomField->Name; -% $escaped_name =~ s/[^a-z0-9_-]/_/g; -% my $type = $CustomField->Type || 'Unknown'; -% $i++; -% if ( $single_column || $i % 2 ) { - -% } - - - -% if ($single_column || not $i % 2 ) { - -% } - -% } - -%# close row if required -% if ( !$single_column || $i % 2 ) { - -% } - -
- <% loc($CustomField->Name) %>
- <% $CustomField->FriendlyType %> -
-% my $default = $m->notes('Field-' . $CustomField->Id); -% $default ||= $ARGS{"CustomField-". $CustomField->Id }; - <& /Elements/EditCustomField, - %ARGS, - Object => $TicketObj, - CustomField => $CustomField, - NamePrefix => $NamePrefix, - Default => $default, - &> -% if (my $msg = $m->notes('InvalidField-' . $CustomField->Id)) { -
- <% $msg %> -% } -
-% $m->callback( %ARGS, CallbackName => 'AfterCustomFields', TicketObj => $TicketObj, QueueObj => $QueueObj ); <%INIT> -my $CustomFields; +RT->Deprecated( Remove => "4.4", Instead => "/Elements/EditCustomFields" ); +my $CustomFields; if ($TicketObj && !$OnCreate) { - $CustomFields = $TicketObj->CustomFields(); - $NamePrefix .= "Object-RT::Ticket-".$TicketObj->Id."-CustomField-"; + $CustomFields = $TicketObj->CustomFields; } else { - $CustomFields = $QueueObj->TicketCustomFields(); - $NamePrefix .= "Object-RT::Ticket--CustomField-"; + $CustomFields = $QueueObj->TicketCustomFields; } - $m->callback( %ARGS, CallbackName => 'MassageCustomFields', CustomFields => $CustomFields ); -my $single_column = RT->Config->Get('EditCustomFieldsSingleColumn'); +# show hints for missing required fields +if ( $TicketObj ) { + foreach my $field ( $TicketObj->MissingRequiredFields ) { + $m->notes('InvalidField-' . $field->Id => 'Required to resolve'); + } +} +return $m->comp('/Elements/EditCustomFields', + %ARGS, + Object => $TicketObj || RT::Ticket->new( $session{'CurrentUser'} ), + CustomFields => $CustomFields, +); <%ARGS> -$NamePrefix => '' $TicketObj => undef $QueueObj => undef $OnCreate => undef -$DefaultsFromTopArguments => 1 -$CFIDPrefix => ''