25 parent::__construct( $mainModule, $moduleName );
26 $this->authManager = $authManager;
27 $this->userFactory = $userFactory;
35 if (
$params[
'user'] !==
null ) {
36 $user = $this->userFactory->newFromName(
38 UserRigorOptions::RIGOR_CREATABLE
44 "baduser_{$encParamName}"
48 if ( $user->isRegistered() || $this->authManager->userExists( $user->getName() ) ) {
52 $user->setEmail( (
string)
$params[
'email'] );
53 $user->setRealName( (
string)
$params[
'realname'] );
59 $validity = $user->checkPasswordValidity(
$params[
'password'] );
60 $r[
'validity'] = $validity->isGood() ?
'Good' : ( $validity->isOK() ?
'Change' :
'Invalid' );
61 $messages = array_merge(
66 $r[
'validitymessages'] = $messages;
81 ParamValidator::PARAM_TYPE =>
'password',
82 ParamValidator::PARAM_REQUIRED => true
85 ParamValidator::PARAM_TYPE =>
'user',
86 UserDef::PARAM_ALLOWED_USER_TYPES => [
'name',
'id' ],
95 'action=validatepassword&password=foobar'
96 =>
'apihelp-validatepassword-example-1',
97 'action=validatepassword&password=querty&user=Example'
98 =>
'apihelp-validatepassword-example-2',
103 return 'https://www.mediawiki.org/wiki/Special:MyLanguage/API:Validatepassword';
108class_alias( ApiValidatePassword::class,
'ApiValidatePassword' );
wfEscapeWikiText( $input)
Escapes the given text so that it may be output using addWikiText() without any linking,...
array $params
The job parameters.
This is the main API class, used for both external and internal processing.