getName(); $fname = get_class($this) . "::doQuery"; if ( $this->isExpensive( ) ) { $vsp = $wgLang->getValidSpecialPages(); $logpage = new LogPage( $vsp[$sname] ); $logpage->mUpdateRecentChanges = false; if ( $wgMiserMode ) { $logpage->showAsDisabledPage(); return; } } $sql = $this->getSQL( $offset, $limit+1 ); $res = wfQuery( $sql, DB_READ, $fname ); $sk = $wgUser->getSkin( ); $top = wfShowingResults( $offset, $limit ); $wgOut->addHTML( "

{$top}\n" ); $sl = wfViewPrevNext( $offset, $limit, $wgLang->specialPage( $sname ), "", wfNumRows( $res ) < ($limit+1) ); $wgOut->addHTML( "
{$sl}\n" ); $s = "

    "; $i = 0; while ( ($i<$limit) && ($obj = wfFetchObject( $res )) ) { $format = $this->formatResult( $sk, $obj ); $s .= "
  1. {$format}
  2. \n"; $i++; } wfFreeResult( $res ); $s .= "
"; $wgOut->addHTML( $s ); $wgOut->addHTML( "

{$sl}\n" ); # Saving cache if ( $this->isExpensive() && $offset == 0 && $limit >= 50 ) { $logpage->replaceContent( $s ); } } } # This is a subclass for very simple queries that are just looking for page # titles that match some criteria. It formats each result item as a link to # that page. class PageQueryPage extends QueryPage { function formatResult( $skin, $result ) { return $skin->makeKnownLink( $result->cur_title, "" ); } } ?>