* @author Rob Church <robchur@gmail.com>
*/
+use Wikimedia\Rdbms\IResultWrapper;
+use Wikimedia\Rdbms\IDatabase;
+
/**
* Special page lists templates with a large number of
* transclusion links, i.e. "most used" templates
* Pre-cache page existence to speed up link generation
*
* @param IDatabase $db
- * @param ResultWrapper $res
+ * @param IResultWrapper $res
*/
public function preprocessResults( $db, $res ) {
- if ( !$res->numRows() ) {
- return;
- }
-
- $batch = new LinkBatch();
- foreach ( $res as $row ) {
- $batch->add( $row->namespace, $row->title );
- }
- $batch->execute();
-
- $res->seek( 0 );
+ $this->executeLBFromResultWrapper( $res );
}
/**
}
return $this->getLanguage()->specialList(
- Linker::link( $title ),
+ $this->getLinkRenderer()->makeLink( $title ),
$this->makeWlhLink( $title, $result )
);
}
*/
private function makeWlhLink( $title, $result ) {
$wlh = SpecialPage::getTitleFor( 'Whatlinkshere', $title->getPrefixedText() );
- $label = $this->msg( 'ntransclusions' )->numParams( $result->value )->escaped();
+ $label = $this->msg( 'ntransclusions' )->numParams( $result->value )->text();
- return Linker::link( $wlh, $label );
+ return $this->getLinkRenderer()->makeLink( $wlh, $label );
}
protected function getGroupName() {