From: Kunal Mehta Date: Sat, 14 Dec 2013 20:47:06 +0000 (-0800) Subject: Explicitly support user id in action=userrights X-Git-Tag: 1.31.0-rc.0~17614 X-Git-Url: http://git.cyclocoop.org/%22%2C%20generer_url_ecrire%28?a=commitdiff_plain;h=825078d41b5bc109911596d2764f1e56fc265295;p=lhc%2Fweb%2Fwiklou.git Explicitly support user id in action=userrights Bug: 32493 Change-Id: I2279cde5d0077f8a0612e707a2410693c5e53a12 --- diff --git a/includes/api/ApiUserrights.php b/includes/api/ApiUserrights.php index be98a21c2b..2bd7321954 100644 --- a/includes/api/ApiUserrights.php +++ b/includes/api/ApiUserrights.php @@ -61,10 +61,13 @@ class ApiUserrights extends ApiBase { } $params = $this->extractRequestParams(); + $this->requireOnlyOneParameter( $params, 'user', 'userid' ); + + $user = isset( $params['user'] ) ? $params['user'] : '#' . $params['userid']; $form = new UserrightsPage; $form->setContext( $this->getContext() ); - $status = $form->fetchUser( $params['user'] ); + $status = $form->fetchUser( $user ); if ( !$status->isOK() ) { $this->dieStatus( $status ); } @@ -86,7 +89,9 @@ class ApiUserrights extends ApiBase { return array( 'user' => array( ApiBase::PARAM_TYPE => 'string', - ApiBase::PARAM_REQUIRED => true + ), + 'userid' => array( + ApiBase::PARAM_TYPE => 'integer', ), 'add' => array( ApiBase::PARAM_TYPE => User::getAllGroups(), @@ -109,6 +114,7 @@ class ApiUserrights extends ApiBase { public function getParamDescription() { return array( 'user' => 'User name', + 'userid' => 'User id', 'add' => 'Add the user to these groups', 'remove' => 'Remove the user from these groups', 'token' => 'A userrights token previously retrieved through list=users', @@ -130,7 +136,8 @@ class ApiUserrights extends ApiBase { public function getExamples() { return array( - 'api.php?action=userrights&user=FooBot&add=bot&remove=sysop|bureaucrat&token=123ABC' + 'api.php?action=userrights&user=FooBot&add=bot&remove=sysop|bureaucrat&token=123ABC', + 'api.php?action=userrights&userid=123&add=bot&remove=sysop|bureaucrat&token=123ABC' ); }