Efficiency/code cleanup. Refactor common code into a new function; use 
$1 instead of $& for efficiency. (match only one group)

        Patch by kareila. 

diffs (44 lines):

diff -r 384b3e3c85c0 -r b78af312d67f cgi-bin/LJ/Talk.pm
--- a/cgi-bin/LJ/Talk.pm        Tue Nov 30 23:54:39 2010 +0800
+++ b/cgi-bin/LJ/Talk.pm        Wed Dec 01 00:05:40 2010 +0800
@@ -2394,6 +2394,13 @@ sub treat_as_anon {
     return LJ::isu( $u ) ? ! $u->trusts_or_has_member( $pu ) : 1;
 }
 
+sub format_eventtime {
+    my ( $etime, $u ) = @_;
+    $etime ||= '';
+    $etime =~ s!(\d{4}-\d{2}-\d{2})!LJ::date_to_view_links( $u, $1 )!e;
+    return "<br /><span class='time'>@ $etime</span>";
+}
+
 package LJ::Talk::Post;
 
 use Text::Wrap;
diff -r 384b3e3c85c0 -r b78af312d67f htdocs/talkpost.bml
--- a/htdocs/talkpost.bml       Tue Nov 30 23:54:39 2010 +0800
+++ b/htdocs/talkpost.bml       Wed Dec 01 00:05:40 2010 +0800
@@ -263,9 +263,7 @@ body<=
     }
 
     unless ($init->{'replyto'}) {
-        my $etime = $item->{'eventtime'};
-        $etime =~ s!(\d\d\d\d)-(\d\d)-(\d\d)!LJ::date_to_view_links($u, $&)!e;
-        $ret .= "<br /><span class='time'>@ $etime</span>";
+        $ret .= LJ::Talk::format_eventtime( $item->{eventtime}, $u );
     }
 
     $ret .= "</td></tr></table>";
diff -r 384b3e3c85c0 -r b78af312d67f htdocs/talkread.bml
--- a/htdocs/talkread.bml       Tue Nov 30 23:54:39 2010 +0800
+++ b/htdocs/talkread.bml       Wed Dec 01 00:05:40 2010 +0800
@@ -274,8 +274,7 @@ body<=
     $etime = LJ::S2::DateTime_unix( $etime );
     $etime = S2::Builtin::LJ::Date__date_format( $s2_ctx, $etime, "iso" ) .
             " " . S2::Builtin::LJ::DateTime__time_format( $s2_ctx, $etime, 
$fmt_time_short );
-    $etime =~ s!(\d\d\d\d)-(\d\d)-(\d\d)!LJ::date_to_view_links($u, $&)!e;
-    $ret .= "<br /><span class='time'>@ $etime</span>";
+    $ret .= LJ::Talk::format_eventtime( $etime, $u );
     $ret .= "</td></tr></table>";
 
     ## standout bar
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog

Reply via email to