X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2FimportSiteScripts.php;h=7fdb355a91aa88cb22f71b6d15fe7fd4f33056c8;hb=60e8a35c2d344cc22d5dc149aed10cf71f21b4c5;hp=6566a60d9727ddc02b0278cf9104f67c7efe8e88;hpb=2086cd118020f6388d7b6952ac2d9e2b55e6ef1f;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/importSiteScripts.php b/maintenance/importSiteScripts.php index 6566a60d97..7fdb355a91 100644 --- a/maintenance/importSiteScripts.php +++ b/maintenance/importSiteScripts.php @@ -32,7 +32,7 @@ require_once __DIR__ . '/Maintenance.php'; class ImportSiteScripts extends Maintenance { public function __construct() { parent::__construct(); - $this->mDescription = 'Import site scripts from a site'; + $this->addDescription( 'Import site scripts from a site' ); $this->addArg( 'api', 'API base url' ); $this->addArg( 'index', 'index.php base url' ); $this->addOption( 'username', 'User name of the script importer' ); @@ -41,7 +41,12 @@ class ImportSiteScripts extends Maintenance { public function execute() { global $wgUser; - $user = User::newFromName( $this->getOption( 'username', 'ScriptImporter' ) ); + $username = $this->getOption( 'username', false ); + if ( $username === false ) { + $user = User::newSystemUser( 'ScriptImporter', [ 'steal' => true ] ); + } else { + $user = User::newFromName( $username ); + } $wgUser = $user; $baseUrl = $this->getArg( 1 ); @@ -56,10 +61,10 @@ class ImportSiteScripts extends Maintenance { } $this->output( "Importing $page\n" ); - $url = wfAppendQuery( $baseUrl, array( + $url = wfAppendQuery( $baseUrl, [ 'action' => 'raw', - 'title' => "MediaWiki:{$page}" ) ); - $text = Http::get( $url, array(), __METHOD__ ); + 'title' => "MediaWiki:{$page}" ] ); + $text = Http::get( $url, [], __METHOD__ ); $wikiPage = WikiPage::factory( $title ); $content = ContentHandler::makeContent( $text, $wikiPage->getTitle() ); @@ -68,20 +73,20 @@ class ImportSiteScripts extends Maintenance { } protected function fetchScriptList() { - $data = array( + $data = [ 'action' => 'query', 'format' => 'json', 'list' => 'allpages', 'apnamespace' => '8', 'aplimit' => '500', 'continue' => '', - ); + ]; $baseUrl = $this->getArg( 0 ); - $pages = array(); + $pages = []; while ( true ) { $url = wfAppendQuery( $baseUrl, $data ); - $strResult = Http::get( $url, array(), __METHOD__ ); + $strResult = Http::get( $url, [], __METHOD__ ); $result = FormatJson::decode( $strResult, true ); $page = null;