Revert "merged master"
[lhc/web/wiklou.git] / maintenance / dumpLinks.php
index f61c398..ad440e7 100644 (file)
@@ -1,8 +1,5 @@
 <?php
 /**
- * Copyright (C) 2005 Brion Vibber <brion@pobox.com>
- * http://www.mediawiki.org/
- *
  * Quick demo hack to generate a plaintext link dump,
  * per the proposed wiki link database standard:
  * http://www.usemod.com/cgi-bin/mb.pl?LinkDatabase
@@ -11,6 +8,9 @@
  * Does not include interwiki or URL links.
  * Dumps ASCII text to stdout; command-line.
  *
+ * Copyright © 2005 Brion Vibber <brion@pobox.com>
+ * http://www.mediawiki.org/
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  * http://www.gnu.org/copyleft/gpl.html
  *
- * @addtogroup SpecialPage
+ * @file
+ * @ingroup Maintenance
  */
 
-require_once 'commandLine.inc';
+require_once( dirname( __FILE__ ) . '/Maintenance.php' );
+
+/**
+ * Maintenance script that generates a plaintext link dump.
+ *
+ * @ingroup Maintenance
+ */
+class DumpLinks extends Maintenance {
+       public function __construct() {
+               parent::__construct();
+               $this->mDescription = "Quick demo hack to generate a plaintext link dump";
+       }
 
-$dbr = wfGetDB( DB_SLAVE );
-$result = $dbr->select( array( 'pagelinks', 'page' ),
-       array(
-               'page_id',
-               'page_namespace',
-               'page_title',
-               'pl_namespace',
-               'pl_title' ),
-       array( 'page_id=pl_from' ),
-       'dumpLinks',
-       array( 'ORDER BY' => 'page_id' ) );
+       public function execute() {
+               $dbr = wfGetDB( DB_SLAVE );
+               $result = $dbr->select( array( 'pagelinks', 'page' ),
+                       array(
+                               'page_id',
+                               'page_namespace',
+                               'page_title',
+                               'pl_namespace',
+                               'pl_title' ),
+                       array( 'page_id=pl_from' ),
+                       __METHOD__,
+                       array( 'ORDER BY' => 'page_id' ) );
 
-$lastPage = null;
-while( $row = $dbr->fetchObject( $result ) ) {
-       if( $lastPage != $row->page_id ) {
-               if( isset( $lastPage ) ) {
-                       print "\n";
+               $lastPage = null;
+               foreach ( $result as $row ) {
+                       if ( $lastPage != $row->page_id ) {
+                               if ( isset( $lastPage ) ) {
+                                       $this->output( "\n" );
+                               }
+                               $page = Title::makeTitle( $row->page_namespace, $row->page_title );
+                               $this->output( $page->getPrefixedUrl() );
+                               $lastPage = $row->page_id;
+                       }
+                       $link = Title::makeTitle( $row->pl_namespace, $row->pl_title );
+                       $this->output( " " . $link->getPrefixedUrl() );
                }
-               $page = Title::makeTitle( $row->page_namespace, $row->page_title );
-               print $page->getPrefixedUrl();
-               $lastPage = $row->page_id;
+               if ( isset( $lastPage ) )
+                       $this->output( "\n" );
        }
-       $link = Title::makeTitle( $row->pl_namespace, $row->pl_title );
-       print " " . $link->getPrefixedUrl();
 }
-if( isset( $lastPage ) )
-       print "\n";
 
+$maintClass = "DumpLinks";
+require_once( RUN_MAINTENANCE_IF_MAIN );