25 parent::__construct( $mainModule, $moduleName );
26 $this->authManager = $authManager;
27 $this->userFactory = $userFactory;
37 if ( $params[
'user'] !==
null ) {
38 $user = $this->userFactory->newFromName(
40 UserRigorOptions::RIGOR_CREATABLE
46 "baduser_{$encParamName}"
50 if ( $user->isRegistered() || $this->authManager->userExists( $user->getName() ) ) {
54 $user->setEmail( (
string)$params[
'email'] );
55 $user->setRealName( (
string)$params[
'realname'] );
61 $validity = $user->checkPasswordValidity( $params[
'password'] );
62 $r[
'validity'] = $validity->isGood() ?
'Good' : ( $validity->isOK() ?
'Change' :
'Invalid' );
63 $messages = array_merge(
68 $r[
'validitymessages'] = $messages;
85 ParamValidator::PARAM_TYPE =>
'password',
86 ParamValidator::PARAM_REQUIRED => true
89 ParamValidator::PARAM_TYPE =>
'user',
90 UserDef::PARAM_ALLOWED_USER_TYPES => [
'name',
'id' ],
100 'action=validatepassword&password=foobar'
101 =>
'apihelp-validatepassword-example-1',
102 'action=validatepassword&password=querty&user=Example'
103 =>
'apihelp-validatepassword-example-2',
109 return 'https://www.mediawiki.org/wiki/Special:MyLanguage/API:Validatepassword';
114class_alias( ApiValidatePassword::class,
'ApiValidatePassword' );
wfEscapeWikiText( $input)
Escapes the given text so that it may be output using addWikiText() without any linking,...
This is the main API class, used for both external and internal processing.