diff options
Diffstat (limited to 'rt/html/Elements/CollectionAsTable/Row')
-rw-r--r-- | rt/html/Elements/CollectionAsTable/Row | 99 |
1 files changed, 32 insertions, 67 deletions
diff --git a/rt/html/Elements/CollectionAsTable/Row b/rt/html/Elements/CollectionAsTable/Row index 3316bc0..701966f 100644 --- a/rt/html/Elements/CollectionAsTable/Row +++ b/rt/html/Elements/CollectionAsTable/Row @@ -1,14 +1,8 @@ -%# BEGIN BPS TAGGED BLOCK {{{ +%# BEGIN LICENSE BLOCK; %# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> +%# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com> %# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: +%# (Except where explictly superceded by other copyright notices) %# %# This work is made available to you under the terms of Version 2 of %# the GNU General Public License. A copy of that license should have @@ -20,29 +14,14 @@ %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU %# General Public License for more details. %# -%# 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. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) +%# Unless otherwise specified, all modifications, corrections or +%# extensions to this work which alter its source code become the +%# property of Best Practical Solutions, LLC when submitted for +%# inclusion in the work. %# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. %# -%# END BPS TAGGED BLOCK }}} +%# END LICENSE BLOCK + <%ARGS> $i => undef @Format => undef @@ -53,56 +32,42 @@ $Warning => undef </%ARGS> <%PERL> -$m->out('<TR class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); +$m->out( '<TR class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); my $item; foreach my $column (@Format) { if ( $column->{title} eq 'NEWLINE' ) { - while ( $item < $maxitems ) { - $m->out(qq{<td class="collection-as-table"> </td>\n}); - $item++; - } - $item = 0; + while ($item < $maxitems) { + $m->out("<td> </td>\n"); + $item++; + } + $item = 0; $m->out('</TR>'); - $m->out('<TR class="' - . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) - . '" >' ); + $m->out( '<TR class="' . + ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' ); next; } $item++; - $m->out('<td class="collection-as-table" '); - $m->out( 'align="' . $column->{align} . '"' ) if ( $column->{align} ); - $m->out('>'); + $m->out('<td align="left">'); foreach my $subcol ( @{ $column->{output} } ) { if ( $subcol =~ /^__(.*?)__$/o ) { - my $col = $1; - my $value = $m->comp( - '/Elements/RT__Ticket/ColumnMap', - Name => $col, - Attr => 'value' - ); - my @out; - - if ( $value && ref($value) ) { - - # All HTML snippets are returned by the callback function - # as scalar references. Data fetched from the objects are - # plain scalars, and needs to be escaped properly. - @out = - map { - ref($_) ? $$_ : $m->interp->apply_escapes( $_ => 'h' ) - } &{$value}( $record, $i ) - ; - } - else { + my $col = $1; + my $value = $m->comp('/Elements/RT__Ticket/ColumnMap', Name => $col, Attr => 'value'); - # Simple value; just escape it. - @out = $m->interp->apply_escapes( $value => 'h' ); + if ( $value && ref($value)) { + # All HTML snippets are returned by the callback function + # as scalar references. Data fetched from the objects are + # plain scalars, and needs to be escaped properly. + $m->out( + map { ref($_) ? $$_ : $m->interp->apply_escapes( $_ => 'h' ) } + &{ $value } ( $record, $i ) + ); + } else { + # Simple value; just escape it. + $m->out( $m->interp->apply_escapes( $value => 'h' ) ); } - s/\n/<br>/gs for @out; - $m->out( @out ); } else { - $m->out($subcol); + $m->out( Encode::decode_utf8($subcol) ); } } $m->out('</td>'); |