Standardize comment thread anchors on #ljcmt, for now. Refactors into
functions so that we can easily change it later.
Patch by kareila.
diffs (306 lines):
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 cgi-bin/LJ/Comment.pm
--- a/cgi-bin/LJ/Comment.pm Thu Jul 23 17:02:45 2009 +0000
+++ b/cgi-bin/LJ/Comment.pm Thu Jul 23 17:30:00 2009 +0000
@@ -221,8 +221,9 @@ sub url {
my $entry = $self->entry;
my $url = $entry->url;
- return "$url?thread=$dtalkid#t$dtalkid";
+ return "$url?thread=$dtalkid" . LJ::Talk::comment_anchor( $dtalkid );
}
+*thread_url = \&url;
sub reply_url {
my $self = shift;
@@ -232,16 +233,6 @@ sub reply_url {
my $url = $entry->url;
return "$url?replyto=$dtalkid";
-}
-
-sub thread_url {
- my $self = shift;
-
- my $dtalkid = $self->dtalkid;
- my $entry = $self->entry;
- my $url = $entry->url;
-
- return "$url?thread=$dtalkid#t$dtalkid";
}
sub parent_url {
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 cgi-bin/LJ/Event/JournalNewComment.pm
--- a/cgi-bin/LJ/Event/JournalNewComment.pm Thu Jul 23 17:02:45 2009 +0000
+++ b/cgi-bin/LJ/Event/JournalNewComment.pm Thu Jul 23 17:30:00 2009 +0000
@@ -200,11 +200,12 @@ sub content {
my $comment_body = $comment->body_html;
my $buttons = $comment->manage_buttons;
my $dtalkid = $comment->dtalkid;
+ my $htmlid = LJ::Talk::comment_htmlid( $dtalkid );
$comment_body =~ s/\n/<br \/>/g;
my $ret = qq {
- <div id="ljcmt$dtalkid" class="JournalNewComment">
+ <div id="$htmlid" class="JournalNewComment">
<div class="ManageButtons">$buttons</div>
<div class="Body">$comment_body</div>
</div>
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 cgi-bin/LJ/Portal/Box/RecentComments.pm
--- a/cgi-bin/LJ/Portal/Box/RecentComments.pm Thu Jul 23 17:02:45 2009 +0000
+++ b/cgi-bin/LJ/Portal/Box/RecentComments.pm Thu Jul 23 17:30:00 2009 +0000
@@ -129,16 +129,17 @@ sub generate_content {
# print out comment w/ links
my $posturl = "$root/$lrow->{ditemid}.html";
- my $replyurl = LJ::Talk::talkargs($posturl, "replyto=$talkid");
- my $talkurl = "$root/$lrow->{ditemid}.html?thread=$talkid\#t$talkid";
+ my $replyurl = LJ::Talk::talkargs( $posturl, "replyto=$talkid" );
+ my $talkurl = LJ::Talk::talkargs( $posturl, "thread=$talkid" ) .
LJ::Talk::comment_anchor( $talkid );
my $userlink = LJ::isu($pu) ? LJ::ljuser($pu) : "<i>(Anonymous)</i>";
+ my $htmlid = LJ::Talk::comment_htmlid( $talkid );
# clean comment subject/text
LJ::CleanHTML::clean_subject_all(\$subject);
LJ::CleanHTML::clean_comment(\$body);
$content .= qq {
- <tr id="ljcmt$talkid">
+ <tr id="$htmlid">
<td>
<span class="RecentCommentTitle">$userlink </span>
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 cgi-bin/LJ/S2/EntryPage.pm
--- a/cgi-bin/LJ/S2/EntryPage.pm Thu Jul 23 17:02:45 2009 +0000
+++ b/cgi-bin/LJ/S2/EntryPage.pm Thu Jul 23 17:30:00 2009 +0000
@@ -193,7 +193,7 @@ sub EntryPage
if ($com->{'parenttalkid'}) {
my $dparent = ($com->{'parenttalkid'} << 8) + $entry->anum;
- $par_url = LJ::Talk::talkargs($permalink, "thread=$dparent",
$style_arg) . "#t$dparent";
+ $par_url = LJ::Talk::talkargs($permalink, "thread=$dparent",
$style_arg) . LJ::Talk::comment_anchor( $dparent );
}
my $poster;
@@ -222,7 +222,7 @@ sub EntryPage
'metadata' => {
'picture_keyword' => $com->{'props'}->{'picture_keyword'},
},
- 'permalink_url' => "$permalink?thread=$dtalkid#t$dtalkid",
+ 'permalink_url' => "$permalink?thread=$dtalkid" .
LJ::Talk::comment_anchor( $dtalkid ),
'reply_url' => $reply_url,
'poster' => $poster,
'replies' => [],
@@ -242,8 +242,8 @@ sub EntryPage
'frozen' => $com->{'state'} eq "F" ? 1 : 0,
'deleted' => $com->{'state'} eq "D" ? 1 : 0,
'link_keyseq' => [ 'delete_comment' ],
- 'anchor' => "t$dtalkid",
- 'dom_id' => "ljcmt$dtalkid",
+ 'anchor' => LJ::Talk::comment_htmlid( $dtalkid ),
+ 'dom_id' => LJ::Talk::comment_htmlid( $dtalkid ),
'comment_posted' => $commentposted,
'edited' => $edited ? 1 : 0,
'time_remote' => $datetime_remote,
@@ -274,7 +274,7 @@ sub EntryPage
push @$link_keyseq, "watching_parent" if LJ::is_enabled('esn');
unshift @$link_keyseq, "edit_comment" if
LJ::is_enabled('edit_comments');
- $s2com->{'thread_url'} = LJ::Talk::talkargs($permalink,
"thread=$dtalkid", $style_arg) . "#t$dtalkid";
+ $s2com->{'thread_url'} = LJ::Talk::talkargs($permalink,
"thread=$dtalkid", $style_arg) . LJ::Talk::comment_anchor( $dtalkid );
# add the poster_ip metadata if remote user has
# access to see it.
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 cgi-bin/LJ/S2/ReplyPage.pm
--- a/cgi-bin/LJ/S2/ReplyPage.pm Thu Jul 23 17:02:45 2009 +0000
+++ b/cgi-bin/LJ/S2/ReplyPage.pm Thu Jul 23 17:30:00 2009 +0000
@@ -184,7 +184,7 @@ sub ReplyPage
'poster' => $s2poster,
'journal' => $s2entry->{'journal'},
'metadata' => {},
- 'permalink_url' => $u->{'_journalbase'} .
"/$ditemid.html?view=$dtalkid#t$dtalkid",
+ 'permalink_url' => $u->{'_journalbase'} .
"/$ditemid.html?view=$dtalkid" . LJ::Talk::comment_anchor( $dtalkid ),
'depth' => 1,
'time' => $datetime,
'system_time' => $datetime,
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 cgi-bin/talklib.pl
--- a/cgi-bin/talklib.pl Thu Jul 23 17:02:45 2009 +0000
+++ b/cgi-bin/talklib.pl Thu Jul 23 17:30:00 2009 +0000
@@ -2110,6 +2110,16 @@ sub get_replycount {
return $count;
}
+sub comment_htmlid {
+ my $id = shift or return '';
+ return "ljcmt$id";
+}
+
+sub comment_anchor {
+ my $id = shift or return '';
+ return "#ljcmt$id";
+}
+
package LJ::Talk::Post;
use Text::Wrap;
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 htdocs/admin/recent_comments.bml
--- a/htdocs/admin/recent_comments.bml Thu Jul 23 17:02:45 2009 +0000
+++ b/htdocs/admin/recent_comments.bml Thu Jul 23 17:30:00 2009 +0000
@@ -48,7 +48,7 @@
if ($lrow) {
my $talkid = ($r->{'jtalkid'} << 8) + $lrow->{'anum'};
- my $url =
"$LJ::SITEROOT/users/$ju->{user}/$lrow->{ditemid}.html?thread=$talkid\#t$talkid";
+ my $url =
"$LJ::SITEROOT/users/$ju->{user}/$lrow->{ditemid}.html?thread=$talkid" .
LJ::Talk::comment_anchor( $talkid );
$ret .= "$hr_ago hr ago in " . LJ::ljuser($ju) . ": <a
href='$url'>$url</a><br />\n";
} else {
$ret .= "$hr_ago hr ago in " . LJ::ljuser($ju) . ": link
unavailable<br />";
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 htdocs/talkpost_do.bml
--- a/htdocs/talkpost_do.bml Thu Jul 23 17:02:45 2009 +0000
+++ b/htdocs/talkpost_do.bml Thu Jul 23 17:30:00 2009 +0000
@@ -219,12 +219,8 @@ body<=
# Allow style=mine for QR redirects
my $stylemine = $POST{'stylemine'} ? 'style=mine' : '';
- my $commentlink;
- if ($POST{'viewing_thread'} eq '') {
- $commentlink = LJ::Talk::talkargs($talkurl, "view=$dtalkid",
$stylemine) . "#t$dtalkid";
- } else {
- $commentlink = LJ::Talk::talkargs($talkurl,
"thread=$POST{viewing_thread}", $stylemine) . "#t$dtalkid";
- }
+ my $cthread = $POST{'viewing_thread'} ? "thread=$POST{viewing_thread}" :
"view=$dtalkid";
+ my $commentlink = LJ::Talk::talkargs( $talkurl, $cthread, $stylemine ) .
LJ::Talk::comment_anchor( $dtalkid );
my $ret = "";
$ret .= "<?h1 $ML{'.success.title'} h1?>";
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 htdocs/talkread.bml
--- a/htdocs/talkread.bml Thu Jul 23 17:02:45 2009 +0000
+++ b/htdocs/talkread.bml Thu Jul 23 17:30:00 2009 +0000
@@ -508,17 +508,19 @@ body<=
$user = $ML{'.anonuser'};
}
+ my $htmlid = LJ::Talk::comment_htmlid( $dtid );
+
if ($post->{'state'} eq "D") {
- $ret .= "<p><a name='t$dtid'></a><table class='delcomment'><tr>";
+ $ret .= "<p><a name='$htmlid'></a><table class='delcomment'><tr>";
$ret .= "<td><img src='$LJ::IMGPREFIX/dot.gif' height='1' width='"
. ($opts->{'depth'} * 25) . "'></td>";
$ret .= "<td>$ML{'.deletedpost'}</td></tr></table>\n";
} elsif ($post->{'state'} eq "S" && !$post->{'_loaded'} &&
!$post->{'_show'}) {
- $ret .= "<p><a name='t$dtid'></a><table
class='screenedcomment'><tr>";
+ $ret .= "<p><a name='$htmlid'></a><table
class='screenedcomment'><tr>";
$ret .= "<td><img src='$LJ::IMGPREFIX/dot.gif' height='1' width='"
. ($opts->{'depth'} * 25) . "'></td>";
my $screenedtext = $ML{'.screenedpost'};
$ret .= "<td>$screenedtext</td></tr></table>\n";
} elsif ($pu && $pu->is_suspended && !$viewsome) {
- $ret .= "<p><a name='t$dtid'></a><table
class='suspendedcomment'><tr>";
+ $ret .= "<p><a name='$htmlid'></a><table
class='suspendedcomment'><tr>";
$ret .= "<td><img src='$LJ::IMGPREFIX/dot.gif' height='1' width='"
. ($opts->{'depth'} * 25) . "'></td>";
$ret .= "<td>$ML{'.replysuspended'}";
if (LJ::Talk::can_delete($remote, $u, $up, $userpost)) {
@@ -550,7 +552,7 @@ body<=
($tz_remote ? " (local)" : " UTC");
}
- $ret .= "<a name='t$dtid'></a><span id='ljcmt$dtid'><table
width='100%' class='talk-comment'><tbody><tr>";
+ $ret .= "<a name='$htmlid'></a><span id='$htmlid'><table
width='100%' class='talk-comment'><tbody><tr>";
$ret .= "<td rowspan='2'><img src='$LJ::IMGPREFIX/dot.gif'
height='1' width='" . ($opts->{'depth'} * 25) . "'></td>";
$ret .= "<td id='cmtbar$dtid' class='cmtbar-$level'
style='background-color: $bgcolor' width='100%'>";
@@ -584,7 +586,9 @@ body<=
$ret .= BML::ml('.fromip',
{'ip'=>$post->{'props'}->{'poster_ip'}});
}
- $ret .= " <span class='talkargs'>(<a href='" .
LJ::Talk::talkargs($talkurl, "thread=$dtid", $formatlight) .
"#t$dtid'>$T{'link'}</a>)</span>";
+ $ret .= " <span class='talkargs'>(<a href='";
+ $ret .= LJ::Talk::talkargs( $talkurl, "thread=$dtid",
$formatlight );
+ $ret .= LJ::Talk::comment_anchor( $dtid ) .
"'>$T{'link'}</a>)</span>";
if ($comment->remote_can_edit) {
$ret .= "<a href='" .
LJ::Talk::talkargs($comment->edit_url, $stylemine, $formatlight) . "'>" .
LJ::img("editcomment", "", { 'align' => 'absmiddle', 'hspace' => 2, 'vspace' =>
}) . "</a>";
@@ -709,10 +713,11 @@ body<=
my $parentid = $post->{'parenttalkid'} ||
$post->{'parenttalkid_actual'};
if ($parentid != 0) {
my $dpid = $parentid * 256 + $init->{'anum'};
- $ret .= "(<a href='" . LJ::Talk::talkargs($talkurl,
"thread=$dpid", $stylemine, $formatlight) . "#t$dpid'>$T{'parent'}</a>)";
+ $ret .= "(<a href='" . LJ::Talk::talkargs($talkurl,
"thread=$dpid", $stylemine, $formatlight);
+ $ret .= LJ::Talk::comment_anchor( $dpid ) .
"'>$T{'parent'}</a>)";
}
if ($post->{'children'} && @{$post->{'children'}}) {
- my $url = LJ::Talk::talkargs($talkurl, "thread=$dtid",
$stylemine, $formatlight) . "#t$dtid";
+ my $url = LJ::Talk::talkargs($talkurl, "thread=$dtid",
$stylemine, $formatlight) . LJ::Talk::comment_anchor( $dtid );
$ret .= "(<a href='$url'>$T{'thread'}</a>)";
if ((grep {! $_->{_loaded} and !($_->{state} eq "D")}
@{$post->{'children'}}) && $show_thread_expander) {
@@ -728,10 +733,10 @@ body<=
} else {
# link to message
- $ret .= "<a name='t$dtid'></a><span id='ljcmt$dtid'><table
><tbody><tr>";
+ my $url = LJ::Talk::talkargs( $talkurl, "thread=$dtid",
$stylemine, $formatlight ) . LJ::Talk::comment_anchor( $dtid );
+ $ret .= "<a name='$htmlid'></a><span id='$htmlid'><table
><tbody><tr>";
$ret .= "<td><img src='$LJ::IMGPREFIX/dot.gif' height='1'
width='" . ($opts->{'depth'} * 25) . "'></td>";
- $ret .= "<td><a href='" . LJ::Talk::talkargs($talkurl,
"thread=$dtid", $stylemine, $formatlight) . "#t$dtid'>" .
LJ::ehtml($post->{'subject'} || $T{'nosubject'}) . "</a> - $user,
<i>$datepost</i>";
- my $url = LJ::Talk::talkargs($talkurl, "thread=$dtid",
$stylemine, $formatlight) . "#t$dtid";
+ $ret .= "<td><a href='$url'>" . LJ::ehtml($post->{'subject'}
|| $T{'nosubject'}) . "</a> - $user, <i>$datepost</i>";
$ret .= qq[ (<a href='$url'
onClick="Expander.make(this,'$url','$dtid',true);return
false;">$T{'expand'}</a>)] if $show_thread_expander;
# Comment Posted Notice
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 htdocs/talkscreen.bml
--- a/htdocs/talkscreen.bml Thu Jul 23 17:02:45 2009 +0000
+++ b/htdocs/talkscreen.bml Thu Jul 23 17:30:00 2009 +0000
@@ -107,7 +107,7 @@ _info?><?_code
my $ditemid = $qitemid*256 + $anum;
my $itemlink = LJ::journal_base($u) . "/$ditemid.html";
- my $commentlink = "$itemlink?view=$dtalkid#t$dtalkid";
+ my $commentlink = "$itemlink?view=$dtalkid" . LJ::Talk::comment_anchor(
$dtalkid );
if ($mode eq 'screen') {
my $can_screen = LJ::Talk::can_screen($remote, $u, $up,
$post->{'userpost'});
diff -r 8d97fd81d6c0 -r cbf361b1a2b2 htdocs/tools/recent_comments.bml
--- a/htdocs/tools/recent_comments.bml Thu Jul 23 17:02:45 2009 +0000
+++ b/htdocs/tools/recent_comments.bml Thu Jul 23 17:30:00 2009 +0000
@@ -165,21 +165,26 @@ body<=
unless ($r->{state} eq "D")
{
- $ret .= "<a href='/delcomment.bml?${jargent}id=$talkid'>" .
LJ::img("btn_del", "", { 'align' => 'absmiddle', 'hspace' => 2, 'vspace' => })
. "</a>";
+ $ret .= "<a href='/delcomment.bml?${jargent}id=$talkid'>";
+ $ret .= LJ::img("btn_del", "", { 'align' => 'absmiddle', 'hspace'
=> 2, 'vspace' => }) . "</a>";
if ($r->{'state'} ne 'F') {
- $ret .= "<a
href='/talkscreen.bml?mode=freeze&${jargent}talkid=$talkid'>" .
LJ::img("btn_freeze", "", { align => 'absmiddle', hspace => 2, vspace => }) .
"</a>";
+ $ret .= "<a
href='/talkscreen.bml?mode=freeze&${jargent}talkid=$talkid'>";
+ $ret .= LJ::img("btn_freeze", "", { align => 'absmiddle',
hspace => 2, vspace => }) . "</a>";
}
if ($r->{'state'} eq 'F') {
- $ret .= "<a
href='/talkscreen.bml?mode=unfreeze&${jargent}talkid=$talkid'>" .
LJ::img("btn_unfreeze", "", { align => 'absmiddle', hspace => 2, vspace => }) .
"</a>";
+ $ret .= "<a
href='/talkscreen.bml?mode=unfreeze&${jargent}talkid=$talkid'>";
+ $ret .= LJ::img("btn_unfreeze", "", { align => 'absmiddle',
hspace => 2, vspace => }) . "</a>";
}
if ($r->{'state'} ne 'S') {
- $ret .= "<a
href='/talkscreen.bml?mode=screen&${jargent}talkid=$talkid'>" .
LJ::img("btn_scr", "", { 'align' => 'absmiddle', 'hspace' => 2, 'vspace' => })
. "</a>";
+ $ret .= "<a
href='/talkscreen.bml?mode=screen&${jargent}talkid=$talkid'>";
+ $ret .= LJ::img("btn_scr", "", { 'align' => 'absmiddle',
'hspace' => 2, 'vspace' => }) . "</a>";
}
if ($r->{'state'} eq 'S') {
- $ret .= "<a
href='/talkscreen.bml?mode=unscreen&${jargent}talkid=$talkid'>" .
LJ::img("btn_unscr", "", { 'align' => 'absmiddle', 'hspace' => 2, 'vspace' =>
}) . "</a>";
+ $ret .= "<a
href='/talkscreen.bml?mode=unscreen&${jargent}talkid=$talkid'>";
+ $ret .= LJ::img("btn_unscr", "", { 'align' => 'absmiddle',
'hspace' => 2, 'vspace' => }) . "</a>";
}
}
@@ -187,7 +192,8 @@ body<=
#$ret .= " <nobr><input type='checkbox' name='selected_$r->{jtalkid}'
id='s$r->{jtalkid}' />";
#$ret .= " <label
for='s$r->{jtalkid}'>$ML{'/talkread.bml.select'}</label></nobr>";
- $ret .= "</td><td id='ljcmt$talkid' style='text-align: left;
border-top: 1px solid #999; border-left: 1px solid #999'>";
+ $ret .= "</td><td id='" . LJ::Talk::comment_htmlid( $talkid );
+ $ret .= "' style='text-align: left; border-top: 1px solid #999;
border-left: 1px solid #999'>";
my $subject = $log_text->{"$u->{userid} $r->{nodeid}"}[0];
LJ::CleanHTML::clean_subject(\$subject) if $subject ne "";
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog