class ContribsPager extends ReverseChronologicalPager {
public $mDefaultDirection = true;
var $messages, $target;
- var $namespace = '', $mDb;
+ var $namespace = '', $year = '', $month = '', $mDb;
function __construct( $target, $namespace = false, $year = false, $month = false ) {
parent::__construct();
- foreach( explode( ' ', 'uctop diff newarticle rollbacklink diff hist minoreditletter' ) as $msg ) {
+ foreach( explode( ' ', 'uctop diff newarticle rollbacklink diff hist newpageletter minoreditletter' ) as $msg ) {
$this->messages[$msg] = wfMsgExt( $msg, array( 'escape') );
}
$this->target = $target;
function getDefaultQuery() {
$query = parent::getDefaultQuery();
$query['target'] = $this->target;
+ $query['month'] = $this->month;
+ $query['year'] = $this->year;
return $query;
}
'fields' => array(
'page_namespace', 'page_title', 'page_is_new', 'page_latest', 'rev_id', 'rev_page',
'rev_text_id', 'rev_timestamp', 'rev_comment', 'rev_minor_edit', 'rev_user',
- 'rev_user_text', 'rev_deleted'
+ 'rev_user_text', 'rev_parent_id', 'rev_deleted'
),
'conds' => $conds,
'options' => array( 'USE INDEX' => $index )
}
}
- if( $rev->userCan( Revision::DELETED_TEXT ) ) {
+ # Is there a visable previous revision?
+ if( $rev->userCan(Revision::DELETED_TEXT) ) {
$difftext = '(' . $sk->makeKnownLinkObj( $page, $this->messages['diff'], 'diff=prev&oldid='.$row->rev_id ) . ')';
} else {
$difftext = '(' . $this->messages['diff'] . ')';
}
$histlink='('.$sk->makeKnownLinkObj( $page, $this->messages['hist'], 'action=history' ) . ')';
- $comment = $wgContLang->getDirMark() . $sk->revComment( $rev );
+ $comment = $wgContLang->getDirMark() . $sk->revComment( $rev, false, true );
$d = $wgLang->timeanddate( wfTimestamp( TS_MW, $row->rev_timestamp ), true );
if( $this->target == 'newbies' ) {
if( $rev->isDeleted( Revision::DELETED_TEXT ) ) {
$d = '<span class="history-deleted">' . $d . '</span>';
}
+
+ if( $rev->getParentId() === 0 ) {
+ $nflag = '<span class="newpage">' . $this->messages['newpageletter'] . '</span>';
+ } else {
+ $nflag = '';
+ }
if( $row->rev_minor_edit ) {
$mflag = '<span class="minor">' . $this->messages['minoreditletter'] . '</span> ';
$mflag = '';
}
- $ret = "{$d} {$histlink} {$difftext} {$mflag} {$link}{$userlink}{$comment} {$topmarktext}";
+ $ret = "{$d} {$histlink} {$difftext} {$nflag}{$mflag} {$link}{$userlink}{$comment} {$topmarktext}";
if( $rev->isDeleted( Revision::DELETED_TEXT ) ) {
$ret .= ' ' . wfMsgHtml( 'deletedrev' );
}
wfRunHooks( 'SpecialContributionsBeforeMainOutput', $id );
- $wgOut->addHTML( contributionsForm( $options ) );
- # Show original selected options, don't apply them so as to allow paging
- $_GET['year'] = ''; // hack for Pager
- $_GET['month'] = ''; // hack for Pager
if( $skip ) {
$options['year'] = '';
$options['month'] = '';
}
+ $wgOut->addHTML( contributionsForm( $options ) );
+
$pager = new ContribsPager( $target, $options['namespace'], $options['year'], $options['month'] );
if ( !$pager->getNumRows() ) {
- $wgOut->addWikiText( wfMsg( 'nocontribs' ) );
+ $wgOut->addWikiMsg( 'nocontribs' );
return;
}
: 'sp-contributions-footer';
- $text = wfMsg( $message, $target );
+ $text = wfMsgNoTrans( $message, $target );
if( !wfEmptyMsg( $message, $text ) && $text != '-' ) {
$wgOut->addHtml( '<div class="mw-contributions-footer">' );
$wgOut->addWikiText( $text );