* @ingroup SpecialPage
*/
+use MediaWiki\MediaWikiServices;
+
/**
* A special page that allows users to change page titles
*
$immovableNamespaces = [];
foreach ( array_keys( $this->getLanguage()->getNamespaces() ) as $nsId ) {
- if ( !MWNamespace::isMovable( $nsId ) ) {
+ if ( !MediaWikiServices::getInstance()->getNamespaceInfo()->isMovable( $nsId ) ) {
$immovableNamespaces[] = $nsId;
}
}
# Do the actual move.
$mp = new MovePage( $ot, $nt );
- $valid = $mp->isValidMove();
- if ( !$valid->isOK() ) {
- $this->showForm( $valid->getErrorsArray() );
- return;
- }
- $permStatus = $mp->checkPermissions( $user, $this->reason );
- if ( !$permStatus->isOK() ) {
- $this->showForm( $permStatus->getErrorsArray(), true );
- return;
- }
+ $userPermitted = $mp->checkPermissions( $user, $this->reason )->isOK();
- $status = $mp->move( $user, $this->reason, $createRedirect );
+ $status = $mp->moveIfAllowed( $user, $this->reason, $createRedirect );
if ( !$status->isOK() ) {
- $this->showForm( $status->getErrorsArray() );
+ $this->showForm( $status->getErrorsArray(), !$userPermitted );
return;
}
*/
// @todo FIXME: Use Title::moveSubpages() here
+ $nsInfo = MediaWikiServices::getInstance()->getNamespaceInfo();
$dbr = wfGetDB( DB_MASTER );
if ( $this->moveSubpages && (
- MWNamespace::hasSubpages( $nt->getNamespace() ) || (
+ $nsInfo->hasSubpages( $nt->getNamespace() ) || (
$this->moveTalk
- && MWNamespace::hasSubpages( $nt->getTalkPage()->getNamespace() )
+ && $nsInfo->hasSubpages( $nt->getTalkPage()->getNamespace() )
)
) ) {
$conds = [
. ' OR page_title = ' . $dbr->addQuotes( $ot->getDBkey() )
];
$conds['page_namespace'] = [];
- if ( MWNamespace::hasSubpages( $nt->getNamespace() ) ) {
+ if ( $nsInfo->hasSubpages( $nt->getNamespace() ) ) {
$conds['page_namespace'][] = $ot->getNamespace();
}
if ( $this->moveTalk &&
- MWNamespace::hasSubpages( $nt->getTalkPage()->getNamespace() )
+ $nsInfo->hasSubpages( $nt->getTalkPage()->getNamespace() )
) {
$conds['page_namespace'][] = $ot->getTalkPage()->getNamespace();
}
* @param Title $title Page being moved.
*/
function showSubpages( $title ) {
- $nsHasSubpages = MWNamespace::hasSubpages( $title->getNamespace() );
+ $nsHasSubpages = MediaWikiServices::getInstance()->getNamespaceInfo()->
+ hasSubpages( $title->getNamespace() );
$subpages = $title->getSubpages();
$count = $subpages instanceof TitleArray ? $subpages->count() : 0;