X-Git-Url: https://git.cyclocoop.org/%28%28?a=blobdiff_plain;f=includes%2Fspecials%2FSpecialPasswordReset.php;h=a2dc2add28ea82050b085a63d807750d4ff8e873;hb=eca35903a2390bf7eb503fa0ede6a76ce556dc55;hp=c60b34754336cae662fcef49958a84566f5479b5;hpb=d434013a98e7dd517067f5ca9c263b1d4d8bd6ee;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/specials/SpecialPasswordReset.php b/includes/specials/SpecialPasswordReset.php index c60b347543..a2dc2add28 100644 --- a/includes/specials/SpecialPasswordReset.php +++ b/includes/specials/SpecialPasswordReset.php @@ -62,9 +62,10 @@ class SpecialPasswordReset extends FormSpecialPage { } protected function getFormFields() { - global $wgPasswordResetRoutes, $wgAuth; + global $wgAuth; + $resetRoutes = $this->getConfig()->get( 'PasswordResetRoutes' ); $a = array(); - if ( isset( $wgPasswordResetRoutes['username'] ) && $wgPasswordResetRoutes['username'] ) { + if ( isset( $resetRoutes['username'] ) && $resetRoutes['username'] ) { $a['Username'] = array( 'type' => 'text', 'label-message' => 'passwordreset-username', @@ -75,14 +76,14 @@ class SpecialPasswordReset extends FormSpecialPage { } } - if ( isset( $wgPasswordResetRoutes['email'] ) && $wgPasswordResetRoutes['email'] ) { + if ( isset( $resetRoutes['email'] ) && $resetRoutes['email'] ) { $a['Email'] = array( 'type' => 'email', 'label-message' => 'passwordreset-email', ); } - if ( isset( $wgPasswordResetRoutes['domain'] ) && $wgPasswordResetRoutes['domain'] ) { + if ( isset( $resetRoutes['domain'] ) && $resetRoutes['domain'] ) { $domains = $wgAuth->domainList(); $a['Domain'] = array( 'type' => 'select', @@ -102,26 +103,23 @@ class SpecialPasswordReset extends FormSpecialPage { return $a; } - public function alterForm( HTMLForm $form ) { - global $wgPasswordResetRoutes; + protected function getDisplayFormat() { + return 'vform'; + } - $form->setDisplayFormat( 'vform' ); - // Turn the old-school line around the form off. - // XXX This wouldn't be necessary here if we could set the format of - // the HTMLForm to 'vform' at its creation, but there's no way to do so - // from a FormSpecialPage class. - $form->setWrapperLegend( false ); + public function alterForm( HTMLForm $form ) { + $resetRoutes = $this->getConfig()->get( 'PasswordResetRoutes' ); $form->addHiddenFields( $this->getRequest()->getValues( 'returnto', 'returntoquery' ) ); $i = 0; - if ( isset( $wgPasswordResetRoutes['username'] ) && $wgPasswordResetRoutes['username'] ) { + if ( isset( $resetRoutes['username'] ) && $resetRoutes['username'] ) { $i++; } - if ( isset( $wgPasswordResetRoutes['email'] ) && $wgPasswordResetRoutes['email'] ) { + if ( isset( $resetRoutes['email'] ) && $resetRoutes['email'] ) { $i++; } - if ( isset( $wgPasswordResetRoutes['domain'] ) && $wgPasswordResetRoutes['domain'] ) { + if ( isset( $resetRoutes['domain'] ) && $resetRoutes['domain'] ) { $i++; } @@ -194,7 +192,7 @@ class SpecialPasswordReset extends FormSpecialPage { // Check for hooks (captcha etc), and allow them to modify the users list $error = array(); - if ( !wfRunHooks( 'SpecialPasswordResetOnSubmit', array( &$users, $data, &$error ) ) ) { + if ( !Hooks::run( 'SpecialPasswordResetOnSubmit', array( &$users, $data, &$error ) ) ) { return array( $error ); } @@ -222,19 +220,16 @@ class SpecialPasswordReset extends FormSpecialPage { // Check against password throttle foreach ( $users as $user ) { if ( $user->isPasswordReminderThrottled() ) { - global $wgPasswordReminderResendTime; # Round the time in hours to 3 d.p., in case someone is specifying # minutes or seconds. return array( array( 'throttled-mailpassword', - round( $wgPasswordReminderResendTime, 3 ) + round( $this->getConfig()->get( 'PasswordReminderResendTime' ), 3 ) ) ); } } - global $wgNewPasswordExpiry; - // All the users will have the same email address if ( $firstUser->getEmail() == '' ) { // This won't be reachable from the email route, so safe to expose the username @@ -248,7 +243,7 @@ class SpecialPasswordReset extends FormSpecialPage { return array( 'badipaddress' ); } $caller = $this->getUser(); - wfRunHooks( 'User::mailPasswordInternal', array( &$caller, &$ip, &$firstUser ) ); + Hooks::run( 'User::mailPasswordInternal', array( &$caller, &$ip, &$firstUser ) ); $username = $caller->getName(); $msg = IP::isValid( $username ) ? 'passwordreset-emailtext-ip' @@ -273,7 +268,7 @@ class SpecialPasswordReset extends FormSpecialPage { $passwordBlock, count( $passwords ), '<' . Title::newMainPage()->getCanonicalURL() . '>', - round( $wgNewPasswordExpiry / 86400 ) + round( $this->getConfig()->get( 'NewPasswordExpiry' ) / 86400 ) ); $title = $this->msg( 'passwordreset-emailtitle' ); @@ -320,11 +315,12 @@ class SpecialPasswordReset extends FormSpecialPage { } protected function canChangePassword( User $user ) { - global $wgPasswordResetRoutes, $wgEnableEmail, $wgAuth; + global $wgAuth; + $resetRoutes = $this->getConfig()->get( 'PasswordResetRoutes' ); // Maybe password resets are disabled, or there are no allowable routes - if ( !is_array( $wgPasswordResetRoutes ) || - !in_array( true, array_values( $wgPasswordResetRoutes ) ) + if ( !is_array( $resetRoutes ) || + !in_array( true, array_values( $resetRoutes ) ) ) { return 'passwordreset-disabled'; } @@ -335,7 +331,7 @@ class SpecialPasswordReset extends FormSpecialPage { } // Maybe email features have been disabled - if ( !$wgEnableEmail ) { + if ( !$this->getConfig()->get( 'EnableEmail' ) ) { return 'passwordreset-emaildisabled'; }