Add newline to echo call
[lhc/web/wiklou.git] / maintenance / rebuildInterwiki.inc
index 458693d..923c25a 100644 (file)
@@ -3,22 +3,19 @@
  * Rebuild interwiki table using the file on meta and the language list
  * Wikimedia specific!
  *
+ * @file
  * @todo document
- * @package MediaWiki
- * @subpackage Maintenance
+ * @ingroup Maintenance
  */
 
-/** */
-
 /**
  * @todo document
- * @package MediaWiki
- * @subpackage Maintenance
+ * @ingroup Maintenance
  */
 class Site {
        var $suffix, $lateral, $url;
 
-       function Site( $s, $l, $u ) {
+       function __construct( $s, $l, $u ) {
                $this->suffix = $s;
                $this->lateral = $l;
                $this->url = $u;
@@ -30,7 +27,7 @@ class Site {
        }
 }
 
-function getRebuildInterwikiSQL() {
+function makeInterwikiSQL( $destDir ) {
        global $langlist, $languageAliases, $prefixRewrites;
 
        # Multi-language sites
@@ -43,6 +40,7 @@ function getRebuildInterwikiSQL() {
                'wikinews' => new Site( 'wikinews', 'n', 'wikinews.org' ),
                'wikisource' => new Site( 'wikisource', 's', 'wikisource.org' ),
                'wikimedia' => new Site( 'wikimedia', 'chapter', 'wikimedia.org' ),
+               'wikiversity' => new Site( 'wikiversity', 'v', 'wikiversity.org' ),
        );
 
        # List of language prefixes likely to be found in multi-language sites
@@ -59,6 +57,7 @@ function getRebuildInterwikiSQL() {
                'sep11wiki' => 'sep11.wikipedia.org',
                'metawiki' => 'meta.wikimedia.org',
                'commonswiki' => 'commons.wikimedia.org',
+               'specieswiki' => 'species.wikimedia.org',
        );
 
        # Extra interwiki links that can't be in the intermap for some reason
@@ -98,7 +97,7 @@ function getRebuildInterwikiSQL() {
        }
 
        # Extract the intermap from meta
-       $intermap = wfGetHTTP( 'http://meta.wikimedia.org/w/index.php?title=Interwiki_map&action=raw', 30 );
+       $intermap = Http::get( 'http://meta.wikimedia.org/w/index.php?title=Interwiki_map&action=raw', 30 );
        $lines = array_map( 'trim', explode( "\n", trim( $intermap ) ) );
 
        if ( !$lines || count( $lines ) < 2 ) {
@@ -124,10 +123,10 @@ function getRebuildInterwikiSQL() {
                }
        }
 
-       $sql = "-- Generated by rebuildInterwiki.php";
 
 
        foreach ( $dblist as $db ) {
+               $sql = "-- Generated by rebuildInterwiki.php";
                if ( isset( $specials[$db] ) ) {
                        # Special wiki
                        # Has interwiki links and interlanguage links to wikipedia
@@ -212,10 +211,10 @@ function getRebuildInterwikiSQL() {
                        foreach ( $extraLinks as $link ){
                                        $sql .= makeLink( $link, $first, $db );
                        }
-                       $sql .= ";\n\n";
+                       $sql .= ";\n";
                }
+               file_put_contents( "$destDir/$db.sql", $sql );
        }
-       return $sql;
 }
 
 # ------------------------------------------------------------------------------------------
@@ -253,9 +252,7 @@ function makeLink( $entry, &$first, $source ) {
        } else {
                $sql .= ",\n";
        }
-       $dbr =& wfGetDB( DB_SLAVE );
+       $dbr = wfGetDB( DB_SLAVE );
        $sql .= "(" . $dbr->makeList( $entry ) . ")";
        return $sql;
 }
-
-?>