42bba16900f6a5a474884ed4a49d79c0fe17e27e
[lhc/web/wiklou.git] / includes / SpecialBrokenRedirects.php
1 <?php
2
3 require_once('QueryPage.php');
4
5 class BrokenRedirectsPage extends PageQueryPage {
6
7 function getName() {
8 return 'brokenredirects';
9 }
10
11 function isExpensive( ) { return true; }
12
13 function getPageHeader( ) {
14 #FIXME : probably need to add a backlink to the maintenance page.
15 return '<p>'.wfMsg('brokenredirectstext')."</p><br>\n";
16 }
17
18 function getSQL() {
19 $dbr =& wfGetDB( DB_SLAVE );
20 extract( $dbr->tableNames( 'cur', 'brokenlinks' ) );
21
22 $sql = "SELECT bl_to,cur_title FROM $brokenlinks,$cur " .
23 "WHERE cur_is_redirect=1 AND cur_namespace=0 AND bl_from=cur_id ";
24 return $sql;
25 }
26
27 function getOrder() {
28 return '';
29 }
30
31 function formatResult( $skin, $result ) {
32 global $wgLang ;
33
34 $ns = $wgLang->getNamespaces() ;
35 $from = $skin->makeKnownLink( $result->cur_title ,'', 'redirect=no' );
36 $edit = $skin->makeBrokenLink( $result->cur_title , "(".wfMsg("qbedit").")" , 'redirect=no');
37 $to = $skin->makeBrokenLink( $result->bl_to );
38
39 return "$from $edit => $to";
40 }
41 }
42
43 function wfSpecialBrokenRedirects() {
44 list( $limit, $offset ) = wfCheckLimits();
45
46 $sbr = new BrokenRedirectsPage();
47
48 return $sbr->doQuery( $offset, $limit );
49
50 }
51 ?>