X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=includes%2Fapi%2FApiBlock.php;h=4d37af31627891d293801787ba21dad2515a9d3f;hp=c3aab88190261fca4a03ca92aeef2b913c207a70;hb=64b83bdb3afd0ee4f8fc1893a865409c198e601e;hpb=2a3f330a289c7391f62a15d209c91d2f38deaa58 diff --git a/includes/api/ApiBlock.php b/includes/api/ApiBlock.php index c3aab88190..4d37af3162 100644 --- a/includes/api/ApiBlock.php +++ b/includes/api/ApiBlock.php @@ -46,7 +46,7 @@ class ApiBlock extends ApiBase { $this->requireOnlyOneParameter( $params, 'user', 'userid' ); - # bug 15810: blocked admins should have limited access here + # T17810: blocked admins should have limited access here if ( $user->isBlocked() ) { $status = SpecialBlock::checkUnblockSelf( $params['user'], $user ); if ( $status !== true ) { @@ -69,7 +69,7 @@ class ApiBlock extends ApiBase { } else { $target = User::newFromName( $params['user'] ); - // Bug 38633 - if the target is a user (not an IP address), but it + // T40633 - if the target is a user (not an IP address), but it // doesn't exist or is unusable, error. if ( $target instanceof User && ( $target->isAnon() /* doesn't exist */ || !User::isUsableName( $target->getName() ) ) @@ -78,6 +78,13 @@ class ApiBlock extends ApiBase { } } + if ( $params['tags'] ) { + $ableToTag = ChangeTags::canAddTagsAccompanyingChange( $params['tags'], $user ); + if ( !$ableToTag->isOK() ) { + $this->dieStatus( $ableToTag ); + } + } + if ( $params['hidename'] && !$user->isAllowed( 'hideuser' ) ) { $this->dieWithError( 'apierror-canthide' ); } @@ -103,6 +110,7 @@ class ApiBlock extends ApiBase { 'Reblock' => $params['reblock'], 'Watch' => $params['watchuser'], 'Confirm' => true, + 'Tags' => $params['tags'], ]; $retval = SpecialBlock::processForm( $data, $this->getContext() ); @@ -162,6 +170,10 @@ class ApiBlock extends ApiBase { 'allowusertalk' => false, 'reblock' => false, 'watchuser' => false, + 'tags' => [ + ApiBase::PARAM_TYPE => 'tags', + ApiBase::PARAM_ISMULTI => true, + ], ]; } @@ -181,6 +193,6 @@ class ApiBlock extends ApiBase { } public function getHelpUrls() { - return 'https://www.mediawiki.org/wiki/API:Block'; + return 'https://www.mediawiki.org/wiki/Special:MyLanguage/API:Block'; } }