MediaWiki REL1_30
LoginHelper.php
Go to the documentation of this file.
1<?php
2
21 public static $validErrorMessages = [
22 'exception-nologin-text',
23 'watchlistanontext',
24 'changeemail-no-info',
25 'resetpass-no-info',
26 'confirmemail_needlogin',
27 'prefsnologintext2',
28 ];
29
36 public static function getValidErrorMessages() {
37 static $messages = null;
38 if ( !$messages ) {
40 Hooks::run( 'LoginFormValidErrorMessages', [ &$messages ] );
41 }
42
43 return $messages;
44 }
45
46 public function __construct( IContextSource $context ) {
47 $this->setContext( $context );
48 }
49
63 public function showReturnToPage(
64 $type, $returnTo = '', $returnToQuery = '', $stickHTTPS = false
65 ) {
67
68 if ( $type !== 'error' && $wgRedirectOnLogin !== null ) {
69 $returnTo = $wgRedirectOnLogin;
70 $returnToQuery = [];
71 } elseif ( is_string( $returnToQuery ) ) {
72 $returnToQuery = wfCgiToArray( $returnToQuery );
73 }
74
75 // Allow modification of redirect behavior
76 Hooks::run( 'PostLoginRedirect', [ &$returnTo, &$returnToQuery, &$type ] );
77
78 $returnToTitle = Title::newFromText( $returnTo ) ?: Title::newMainPage();
79
80 if ( $wgSecureLogin && !$stickHTTPS ) {
81 $options = [ 'http' ];
82 $proto = PROTO_HTTP;
83 } elseif ( $wgSecureLogin ) {
84 $options = [ 'https' ];
85 $proto = PROTO_HTTPS;
86 } else {
87 $options = [];
88 $proto = PROTO_RELATIVE;
89 }
90
91 if ( $type === 'successredirect' ) {
92 $redirectUrl = $returnToTitle->getFullUrlForRedirect( $returnToQuery, $proto );
93 $this->getOutput()->redirect( $redirectUrl );
94 } else {
95 $this->getOutput()->addReturnTo( $returnToTitle, $returnToQuery, null, $options );
96 }
97 }
98}
$wgSecureLogin
This is to let user authenticate using https when they come from http.
$wgRedirectOnLogin
Allow redirection to another page when a user logs in.
wfCgiToArray( $query)
This is the logical opposite of wfArrayToCgi(): it accepts a query string as its argument and returns...
$messages
The simplest way of implementing IContextSource is to hold a RequestContext as a member variable and ...
getOutput()
Get the OutputPage object.
IContextSource $context
setContext(IContextSource $context)
Set the IContextSource object.
Helper functions for the login form that need to be shared with other special pages (such as CentralA...
static getValidErrorMessages()
Returns an array of all valid error messages.
__construct(IContextSource $context)
static string[] $validErrorMessages
Valid error and warning messages.
showReturnToPage( $type, $returnTo='', $returnToQuery='', $stickHTTPS=false)
Show a return link or redirect to it.
null means default in associative array with keys and values unescaped Should be merged with default with a value of false meaning to suppress the attribute in associative array with keys and values unescaped & $options
Definition hooks.txt:1971
const PROTO_HTTPS
Definition Defines.php:221
const PROTO_HTTP
Definition Defines.php:220
const PROTO_RELATIVE
Definition Defines.php:222
Interface for objects which can provide a MediaWiki context on request.