X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;ds=sidebyside;f=includes%2Fapi%2FApiEditPage.php;h=884306a29968cddbbb597e2b3e6345a8b0fa7156;hb=4f1390819a8fcd91c0c34449736fff4548032ad3;hp=635f6f889c759207a6119cfdba0221e600042b11;hpb=a4a0c649bef9c0974d28412335b2b40c7b0c9239;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiEditPage.php b/includes/api/ApiEditPage.php index 635f6f889c..884306a299 100644 --- a/includes/api/ApiEditPage.php +++ b/includes/api/ApiEditPage.php @@ -48,6 +48,9 @@ class ApiEditPage extends ApiBase { $apiResult = $this->getResult(); if ( $params['redirect'] ) { + if ( $params['prependtext'] === null && $params['appendtext'] === null && $params['section'] !== 'new' ) { + $this->dieUsage( 'You have attempted to edit using the "redirect"-following mode, which must be used in conjuction with section=new, prependtext, or appendtext.', 'redirect-appendonly' ); + } if ( $titleObj->isRedirect() ) { $oldTitle = $titleObj; @@ -396,7 +399,6 @@ class ApiEditPage extends ApiBase { $status = $ep->internalAttemptSave( $result, $user->isAllowed( 'bot' ) && $params['bot'] ); $wgRequest = $oldRequest; - global $wgMaxArticleSize; switch ( $status->value ) { case EditPage::AS_HOOK_ERROR: @@ -420,7 +422,7 @@ class ApiEditPage extends ApiBase { case EditPage::AS_MAX_ARTICLE_SIZE_EXCEEDED: case EditPage::AS_CONTENT_TOO_BIG: - $this->dieUsageMsg( array( 'contenttoobig', $wgMaxArticleSize ) ); + $this->dieUsageMsg( array( 'contenttoobig', $this->getConfig()->get( 'MaxArticleSize' ) ) ); case EditPage::AS_READ_ONLY_PAGE_ANON: $this->dieUsageMsg( 'noedit-anon' ); @@ -496,8 +498,6 @@ class ApiEditPage extends ApiBase { } public function getPossibleErrors() { - global $wgMaxArticleSize; - return array_merge( parent::getPossibleErrors(), $this->getTitleOrPageIdErrorMessage(), array( @@ -516,7 +516,7 @@ class ApiEditPage extends ApiBase { array( 'spamdetected', 'spam' ), array( 'summaryrequired' ), array( 'blockedtext' ), - array( 'contenttoobig', $wgMaxArticleSize ), + array( 'contenttoobig', $this->getConfig()->get( 'MaxArticleSize' ) ), array( 'noedit-anon' ), array( 'noedit' ), array( 'actionthrottledtext' ), @@ -526,7 +526,7 @@ class ApiEditPage extends ApiBase { array( 'editconflict' ), array( 'emptynewsection' ), array( 'unknownerror', 'retval' ), - array( 'code' => 'nosuchsection', 'info' => 'There is no section section.' ), + array( 'code' => 'nosuchsection', 'info' => 'There is no such section.' ), array( 'code' => 'invalidsection', 'info' => 'The section parameter must be a valid section id or \'new\'' @@ -542,6 +542,10 @@ class ApiEditPage extends ApiBase { array( 'code' => 'appendnotsupported', 'info' => 'This type of page can not be edited by appending or prepending text.' ), + array( + 'code' => 'redirect-appendonly', + 'info' => 'You have attempted to edit using the "redirect"-following mode, which must be used in conjuction with section=new, prependtext, or appendtext.', + ), array( 'code' => 'badformat', 'info' => 'The requested serialization format can not be applied to the page\'s content model'