$use_index = $this->dbr->useIndexClause($index);
$sql = "SELECT
page_namespace,page_title,page_is_new,page_latest,
- rev_id,rev_timestamp,rev_comment,rev_minor_edit,rev_user_text,
+ rev_id,rev_page,rev_text_id,rev_timestamp,rev_comment,rev_minor_edit,rev_user,rev_user_text,
rev_deleted
FROM $page,$revision $use_index
WHERE page_id=rev_page AND $userCond $nscond $offsetQuery
* @param string $par (optional) user name of the user for which to show the contributions
*/
function wfSpecialContributions( $par = null ) {
- global $wgUser, $wgOut, $wgLang, $wgContLang, $wgRequest, $wgTitle,
- $wgScript;
+ global $wgUser, $wgOut, $wgLang, $wgContLang, $wgRequest, $wgTitle, $wgScript;
$fname = 'wfSpecialContributions';
$target = isset($par) ? $par : $wgRequest->getVal( 'target' );
}
if ($wgRequest->getText('go') == 'first' && $target != 'newbies') {
- $prevts = $finder->get_first_offset_for_paging();
+ $prevts = $finder->get_first_offset_for_paging();
$prevurl = $title->getLocalURL($urlbits . "&offset=$prevts&limit=$limit$nsurl$boturl");
$wgOut->redirect($prevurl);
return;
}
$talk = $nt->getTalkPage();
if( $talk ) {
- $ul .= ' (' . $sk->makeLinkObj( $talk, $wgLang->getNsText( NS_TALK ) ) . ')';
+ $ul .= ' (' . $sk->makeLinkObj( $talk, $wgLang->getNsText( NS_TALK ) );
+ if( ( $id != 0 ) || ( $id == 0 && User::isIP( $nt->getText() ) ) ) {
+ if( $wgUser->isAllowed( 'block' ) ) {
+ $ul .= ' | ' . $sk->makeLinkObj( Title::makeTitle( NS_SPECIAL, 'Blockip/' . $nt->getText() ), wfMsgHtml( 'blocklink' ) );
+ }
+ $ul .= ' | ' . $sk->makeLinkObj( Title::makeTitle( NS_SPECIAL, 'Log' ), LogPage::logName( 'block' ), 'type=block&page=' . urlencode( $nt->getPrefixedText() ) );
+ }
+ $ul .= ')';
}
if ($target == 'newbies') {
$atstart = (!count($contribs) || $late == $contribs[0]->rev_timestamp);
$atend = (!count($contribs) || $early == $lastts);
- $lasturl = $wgTitle->escapeLocalURL("action=history&limit={$limit}");
-
$firsttext = wfMsgHtml('histfirst');
$lasttext = wfMsgHtml('histlast');
$firstlink = "<a href=\"$myurl&limit=$limit$xnsurl$boturl&go=first\">$firsttext</a>";
$nextlink = "<a href=\"$myurl&offset=$lastts&limit=$limit$xnsurl$boturl\">$nexttext</a>";
}
- if ($target == 'newbies') {
- $firstlast ="($lastlink)";
- } else {
- $firstlast = "($lastlink | $firstlink)";
- }
+ if ($target == 'newbies') {
+ $firstlast ="($lastlink)";
+ } else {
+ $firstlast = "($lastlink | $firstlink)";
+ }
$urls = array();
foreach (array(20, 50, 100, 250, 500) as $num)
$fname = 'ucListEdit';
wfProfileIn( $fname );
- global $wgLang, $wgOut, $wgUser, $wgRequest;
+ global $wgLang, $wgUser, $wgRequest;
static $messages;
if( !isset( $messages ) ) {
foreach( explode( ' ', 'uctop diff newarticle rollbacklink diff hist minoreditletter' ) as $msg ) {
}
}
- $page =& Title::makeTitle( $row->page_namespace, $row->page_title );
- $link = $sk->makeKnownLinkObj( $page, '' );
+ $rev = new Revision( $row );
+
+ $page = Title::makeTitle( $row->page_namespace, $row->page_title );
+ $link = $sk->makeKnownLinkObj( $page );
$difftext = $topmarktext = '';
if( $row->rev_id == $row->page_latest ) {
$topmarktext .= '<strong>' . $messages['uctop'] . '</strong>';
}
}
- if( $row->rev_deleted && !$wgUser->isAllowed( 'delete' ) ) {
- $difftext = '(' . $messages['diff'] . ')';
- } else {
+ if( $rev->userCan( MW_REV_DELETED_TEXT ) ) {
$difftext = '(' . $sk->makeKnownLinkObj( $page, $messages['diff'], 'diff=prev&oldid='.$row->rev_id ) . ')';
+ } else {
+ $difftext = '(' . $messages['diff'] . ')';
}
$histlink='('.$sk->makeKnownLinkObj( $page, $messages['hist'], 'action=history' ) . ')';
- $comment = $sk->commentBlock( $row->rev_comment, $page, (bool)$row->rev_deleted );
+ $comment = $sk->revComment( $rev );
$d = $wgLang->timeanddate( wfTimestamp(TS_MW, $row->rev_timestamp), true );
+
+ if( $rev->isDeleted( MW_REV_DELETED_TEXT ) ) {
+ $d = '<span class="history-deleted">' . $d . '</span>';
+ }
if( $row->rev_minor_edit ) {
$mflag = '<span class="minor">' . $messages['minoreditletter'] . '</span> ';
}
$ret = "{$d} {$histlink} {$difftext} {$mflag} {$link} {$comment} {$topmarktext}";
- if( $row->rev_deleted ) {
- $ret = "<span class='deleted'>$ret</span>";
+ if( $rev->isDeleted( MW_REV_DELETED_TEXT ) ) {
+ $ret .= ' ' . wfMsgHtml( 'deletedrev' );
}
$ret = "<li>$ret</li>\n";
wfProfileOut( $fname );