MediaWiki  master
PasswordAuthenticationRequest.php
Go to the documentation of this file.
1 <?php
22 namespace MediaWiki\Auth;
23 
31  public $password = null;
32 
34  public $retype = null;
35 
36  public function getFieldInfo() {
37  if ( $this->action === AuthManager::ACTION_REMOVE ) {
38  return [];
39  }
40 
41  // for password change it's nice to make extra clear that we are asking for the new password
42  $forNewPassword = $this->action === AuthManager::ACTION_CHANGE;
43  $passwordLabel = $forNewPassword ? 'newpassword' : 'userlogin-yourpassword';
44  $retypeLabel = $forNewPassword ? 'retypenew' : 'yourpasswordagain';
45 
46  $ret = [
47  'username' => [
48  'type' => 'string',
49  'label' => wfMessage( 'userlogin-yourname' ),
50  'help' => wfMessage( 'authmanager-username-help' ),
51  ],
52  'password' => [
53  'type' => 'password',
54  'label' => wfMessage( $passwordLabel ),
55  'help' => wfMessage( 'authmanager-password-help' ),
56  'sensitive' => true,
57  ],
58  ];
59 
60  switch ( $this->action ) {
63  unset( $ret['username'] );
64  break;
65  }
66 
67  if ( $this->action !== AuthManager::ACTION_LOGIN ) {
68  $ret['retype'] = [
69  'type' => 'password',
70  'label' => wfMessage( $retypeLabel ),
71  'help' => wfMessage( 'authmanager-retype-help' ),
72  'sensitive' => true,
73  ];
74  }
75 
76  return $ret;
77  }
78 
79  public function describeCredentials() {
80  return [
81  'provider' => wfMessage( 'authmanager-provider-password' ),
82  'account' => new \RawMessage( '$1', [ $this->username ] ),
83  ];
84  }
85 }
const ACTION_CHANGE
Change a user&#39;s credentials.
This is a value object for authentication requests with a username and password.
const ACTION_REMOVE
Remove a user&#39;s credentials.
wfMessage( $key,... $params)
This is the function for getting translated interface messages.
const ACTION_LOGIN
Log in with an existing (not necessarily local) user.
Definition: AuthManager.php:87
This is a value object for authentication requests.