%#
%# COPYRIGHT:
%#
-%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC
+%# This software is Copyright (c) 1996-2018 Best Practical Solutions, LLC
%# <sales@bestpractical.com>
%#
%# (Except where explicitly superseded by other copyright notices)
%# those contributions and any derivatives thereof.
%#
%# END BPS TAGGED BLOCK }}}
-% $m->callback( CallbackName => 'BeforeTransactionCustomFields', TicketObj => $TicketObj, QueueObj => $QueueObj, NamePrefix => $NamePrefix );
+% $m->callback( CallbackName => 'BeforeTransactionCustomFields', TicketObj => $TicketObj, QueueObj => $QueueObj, InTable => $InTable );
+% if ( $WRAP ) {
+<<% $WRAP %> class="edit-transaction-custom-fields">
+% }
% if ($CustomFields->Count) {
% while (my $CF = $CustomFields->Next()) {
+% $CF->SetContextObject($TicketObj || $QueueObj);
% next unless $CF->CurrentUserHasRight('ModifyCustomField');
-<tr>
-<td class="label"><% loc($CF->Name) %>:</td>
-<td>
+% next unless $CF->UILocation eq $UILocation;
+<<% $FIELD %>>
+<<% $CELL %> class="label cflabel">
+ <span class="name"><% $CF->Name %>:</span><br />
+% if ( $CF->Type ne 'TimeValue' ) {
+ <span class="type"><% $CF->FriendlyType %></span>
+% }
+</<% $CELL %>>
+<<% $CELL %>>
<& /Elements/EditCustomField,
+ %ARGS,
CustomField => $CF,
- NamePrefix => $NamePrefix
+ Object => RT::Transaction->new( $session{'CurrentUser'} ),
&>
-<em><% $CF->FriendlyType %></em>
% if (my $msg = $m->notes('InvalidField-' . $CF->Id)) {
<br />
<span class="cfinvalidfield"><% $msg %></span>
% }
-</td>
-</td></tr>
+</<% $CELL %>>
+</<% $FIELD %>>
+% }
% }
+% if ( $WRAP ) {
+</<% $WRAP %>>
% }
-% $m->callback( CallbackName => 'AfterTransactionCustomFields', TicketObj => $TicketObj, QueueObj => $QueueObj, NamePrefix => $NamePrefix );
+% $m->callback( CallbackName => 'AfterTransactionCustomFields', TicketObj => $TicketObj, QueueObj => $QueueObj, InTable => $InTable );
<%INIT>
my $CustomFields;
$CustomFields = $QueueObj->TicketTransactionCustomFields();
}
-$m->callback( CallbackName => 'MassageTransactionCustomFields', CustomFields => $CustomFields );
+$m->callback( CallbackName => 'MassageTransactionCustomFields', CustomFields => $CustomFields, InTable => $InTable );
+
+$AsTable ||= $InTable;
+my $FIELD = $AsTable ? 'tr' : 'div';
+my $CELL = $AsTable ? 'td' : 'div';
+my $WRAP = '';
+if ( $AsTable ) {
+ $WRAP = 'table' unless $InTable;
+} else {
+ $WRAP = 'div';
+}
</%INIT>
<%ARGS>
-$NamePrefix => "Object-RT::Transaction--CustomField-"
$TicketObj => undef
$QueueObj => undef
+$AsTable => 0
+$InTable => 0
+$UILocation => ''
</%ARGS>