X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2FimportDump.php;h=b6bbc2a6d60009ac288fdd1d5e78eb7276a8b301;hb=10f187821e9d9b1db36cabf7a6902ef694c7e9ba;hp=206c7ee6aed437ddccc92481d5fb8a7812b5c210;hpb=e5ffb82fabc3411ac3f23f5ac7ebd49c923dc1cf;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/importDump.php b/maintenance/importDump.php index 206c7ee6ae..b6bbc2a6d6 100644 --- a/maintenance/importDump.php +++ b/maintenance/importDump.php @@ -82,12 +82,18 @@ TEXT ); $this->addOption( 'image-base-path', 'Import files from a specified path', false, true ); $this->addOption( 'skip-to', 'Start from nth page by skipping first n-1 pages', false, true ); + $this->addOption( 'username-interwiki', 'Use interwiki usernames with this prefix', false, true ); + $this->addOption( 'no-local-users', + 'Treat all usernames as interwiki. ' . + 'The default is to assign edits to local users where they exist.', + false, false + ); $this->addArg( 'file', 'Dump file to import [else use stdin]', false ); } public function execute() { if ( wfReadOnly() ) { - $this->error( "Wiki is in read-only mode; you'll need to disable it for import to work.", true ); + $this->fatalError( "Wiki is in read-only mode; you'll need to disable it for import to work." ); } $this->reportingInterval = intval( $this->getOption( 'report', 100 ) ); @@ -134,7 +140,7 @@ TEXT if ( strval( $ns ) === $namespace && $wgContLang->getNsText( $ns ) !== false ) { return $ns; } - $this->error( "Unknown namespace text / index specified: $namespace", true ); + $this->fatalError( "Unknown namespace text / index specified: $namespace" ); } /** @@ -295,11 +301,17 @@ TEXT if ( $this->hasOption( 'no-updates' ) ) { $importer->setNoUpdates( true ); } + if ( $this->hasOption( 'username-prefix' ) ) { + $importer->setUsernamePrefix( + $this->getOption( 'username-prefix' ), + !$this->hasOption( 'no-local-users' ) + ); + } if ( $this->hasOption( 'rootpage' ) ) { $statusRootPage = $importer->setTargetRootPage( $this->getOption( 'rootpage' ) ); if ( !$statusRootPage->isGood() ) { // Die here so that it doesn't print "Done!" - $this->error( $statusRootPage->getMessage()->text(), 1 ); + $this->fatalError( $statusRootPage->getMessage()->text() ); return false; } }