function preprocessResults( $db, $res ) {
# There's no point doing a batch check if we aren't caching results;
# the page must exist for it to have been pulled out of the table
- if( $this->isCached() ) {
- $batch = new LinkBatch();
- foreach ( $res as $row ) {
- $batch->add( $row->namespace, $row->title );
- }
- $batch->execute();
- if ( $db->numRows( $res ) > 0 ) {
- $db->dataSeek( $res, 0 );
- }
+ if ( !$this->isCached() || !$res->numRows() ) {
+ return;
}
+
+ $batch = new LinkBatch();
+ foreach ( $res as $row ) {
+ $batch->add( $row->namespace, $row->title );
+ }
+ $batch->execute();
+
+ $res->seek( 0 );
}
function sortDescending() {
$dm = $this->getLanguage()->getDirMark();
$title = Title::makeTitle( $result->namespace, $result->title );
- if ( !$title ) {
- return '<!-- Invalid title ' . htmlspecialchars( "{$result->namespace}:{$result->title}" ). '-->';
- }
+
$hlink = Linker::linkKnown(
$title,
- wfMsgHtml( 'hist' ),
+ $this->msg( 'hist' )->escaped(),
array(),
array( 'action' => 'history' )
);
- $plink = $this->isCached()
- ? Linker::link( $title )
- : Linker::linkKnown( $title );
- $size = $this->msg( 'nbytes' )->numParams( $result->value )->escaped();
-
$hlinkInParentheses = $this->msg( 'parentheses' )->rawParams( $hlink )->escaped();
- return $title->exists()
+ if ( $this->isCached() ) {
+ $plink = Linker::link( $title );
+ $exists = $title->exists();
+ } else {
+ $plink = Linker::linkKnown( $title );
+ $exists = true;
+ }
+
+ $size = $this->msg( 'nbytes' )->numParams( $result->value )->escaped();
+
+ return $exists
? "${hlinkInParentheses} {$dm}{$plink} {$dm}[{$size}]"
: "<del>${hlinkInParentheses} {$dm}{$plink} {$dm}[{$size}]</del>";
}