X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fapi%2FApiProtect.php;h=746dc9a16bb7104ad5a8e3c279ae5be79cc25cb6;hb=4e6810e4a2c1d821d8d108c7974ac16917561764;hp=d28906069fc0b066053c7c488227d9be3d2f1055;hpb=e5facc46bc170c302438f60849041b0d6be75e82;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiProtect.php b/includes/api/ApiProtect.php index d28906069f..746dc9a16b 100644 --- a/includes/api/ApiProtect.php +++ b/includes/api/ApiProtect.php @@ -36,11 +36,7 @@ class ApiProtect extends ApiBase { $pageObj = $this->getTitleOrPageId( $params, 'fromdbmaster' ); $titleObj = $pageObj->getTitle(); - $errors = $titleObj->getUserPermissionsErrors( 'protect', $this->getUser() ); - if ( $errors ) { - // We don't care about multiple errors, just report one of them - $this->dieUsageMsg( reset( $errors ) ); - } + $this->checkTitleUserPermissions( $titleObj, 'protect' ); $user = $this->getUser(); $tags = $params['tags']; @@ -58,8 +54,8 @@ class ApiProtect extends ApiBase { if ( count( $expiry ) == 1 ) { $expiry = array_fill( 0, count( $params['protections'] ), $expiry[0] ); } else { - $this->dieUsageMsg( [ - 'toofewexpiries', + $this->dieWithError( [ + 'apierror-toofewexpiries', count( $expiry ), count( $params['protections'] ) ] ); @@ -76,17 +72,17 @@ class ApiProtect extends ApiBase { $protections[$p[0]] = ( $p[1] == 'all' ? '' : $p[1] ); if ( $titleObj->exists() && $p[0] == 'create' ) { - $this->dieUsageMsg( 'create-titleexists' ); + $this->dieWithError( 'apierror-create-titleexists' ); } if ( !$titleObj->exists() && $p[0] != 'create' ) { - $this->dieUsageMsg( 'missingtitle-createonly' ); + $this->dieWithError( 'apierror-missingtitle-createonly' ); } if ( !in_array( $p[0], $restrictionTypes ) && $p[0] != 'create' ) { - $this->dieUsageMsg( [ 'protect-invalidaction', $p[0] ] ); + $this->dieWithError( [ 'apierror-protect-invalidaction', wfEscapeWikiText( $p[0] ) ] ); } if ( !in_array( $p[1], $this->getConfig()->get( 'RestrictionLevels' ) ) && $p[1] != 'all' ) { - $this->dieUsageMsg( [ 'protect-invalidlevel', $p[1] ] ); + $this->dieWithError( [ 'apierror-protect-invalidlevel', wfEscapeWikiText( $p[1] ) ] ); } if ( wfIsInfinity( $expiry[$i] ) ) { @@ -94,12 +90,12 @@ class ApiProtect extends ApiBase { } else { $exp = strtotime( $expiry[$i] ); if ( $exp < 0 || !$exp ) { - $this->dieUsageMsg( [ 'invalidexpiry', $expiry[$i] ] ); + $this->dieWithError( [ 'apierror-invalidexpiry', wfEscapeWikiText( $expiry[$i] ) ] ); } $exp = wfTimestamp( TS_MW, $exp ); if ( $exp < wfTimestampNow() ) { - $this->dieUsageMsg( [ 'pastexpiry', $expiry[$i] ] ); + $this->dieWithError( [ 'apierror-pastexpiry', wfEscapeWikiText( $expiry[$i] ) ] ); } $expiryarray[$p[0]] = $exp; }