MediaWiki REL1_32
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 ...
IContextSource $context
setContext(IContextSource $context)
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:2050
const PROTO_HTTPS
Definition Defines.php:220
const PROTO_HTTP
Definition Defines.php:219
const PROTO_RELATIVE
Definition Defines.php:221
Interface for objects which can provide a MediaWiki context on request.