Upgrade to 4.0.13
[usit-rt.git] / share / html / Elements / MakeClicky
index e989edc..dabe3bb 100644 (file)
 <%ONCE>
 use Regexp::Common qw(URI);
 
+my $escaper = sub {
+    my $content = shift;
+    RT::Interface::Web::EscapeUTF8( \$content );
+    return $content;
+};
+
 my %actions = (
     default => sub {
         my %args = @_;
-        return $args{value};
+        return $escaper->($args{value});
     },
     url => sub {
         my %args = @_;
+        $args{value} = $escaper->($args{value});
         my $result = qq{[<a target="new" href="$args{value}">}. loc('Open URL') .qq{</a>]};
         return $args{value} . qq{ <span class="clickylink">$result</span>};
     },
     url_overwrite => sub {
         my %args = @_;
-        my $result = qq{<a target="new" href="$args{'value'}">};
-        $result .= qq{$args{'value'}</a>};
+        $args{value} = $escaper->($args{value});
+        my $result = qq{<a target="new" href="$args{value}">$args{value}</a>};
         return qq{<span class="clickylink">$result</span>};
     },
 );
@@ -89,12 +96,6 @@ my $handle = sub {
     }
 };
 
-my $escaper = sub {
-    my $content = shift;
-    RT::Interface::Web::EscapeUTF8( \$content );
-    return $content;
-};
-
 # Hook to add more Clicky types
 # XXX Have to have Page argument, as Mason gets caller wrong in Callback?
 # This happens as we are in <%ONCE> block