Merge branch 'master' of https://github.com/jgoodman/Freeside
[freeside.git] / rt / share / html / Elements / ShowUserVerbose
index 6a85a5b..3276228 100644 (file)
@@ -2,7 +2,7 @@
 %#
 %# COPYRIGHT:
 %#
-%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC
+%# This software is Copyright (c) 1996-2014 Best Practical Solutions, LLC
 %#                                          <sales@bestpractical.com>
 %#
 %# (Except where explicitly superseded by other copyright notices)
 %#
 %# END BPS TAGGED BLOCK }}}
 %# Released under the terms of version 2 of the GNU Public License
-% if ( $Address->phrase || $Address->comment ) {
-<% sprintf q{%s <%s> %s}, map $Address->$_, qw( phrase address comment ) %>
-% } else {
-<% $Address->address %>
-% }
+<% $display |n %>\
 <%INIT>
-my ($phrase, $address, $comment);
+my $phrase = '';
+my $address = '';
+my $comment = '';
 
 if ($User) {
     $address = $User->EmailAddress;
-    $phrase  = $User->RealName
-      if $User->RealName && lc $User->RealName ne lc $address;
-    $comment = $User->Name if lc $User->Name ne lc $address;
-    $comment = "($comment)" if defined $comment and length $comment;
-    $Address = Email::Address->new( $phrase, $address, $comment );
+    $phrase = $User->RealName
+      if $User->RealName && ( !$address || lc $User->RealName ne lc $address );
+    $comment = $User->Name if !$address || lc $User->Name ne lc $address;
+} else {
+    $address = $Address;
 }
 
-$Address->comment('') if $comment and defined $Address->user and lc $Address->user eq lc $comment;
-if ( $phrase and my ( $l, $r ) = ( $phrase =~ /^(\w+) (\w+)$/ ) ) {
-    $Address->phrase('')
-      if $Address->user =~ /^\Q$l\E.\Q$r\E$/
-      || $Address->user =~ /^\Q$r\E.\Q$l\E$/;
-}
+my $display = ($phrase || $comment || '' ) . ($address ?  ' <'.$address.'>' : '');
 
+$display = $m->interp->apply_escapes( $display, 'h' )
+    unless $ARGS{'NoEscape'};
 </%INIT>
 <%ARGS>
 $User => undef