}
$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 );
}
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(),
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',
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'
);
}