MediaWiki REL1_31
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
64 public function showReturnToPage(
65 $type, $returnTo = '', $returnToQuery = '', $stickHTTPS = false
66 ) {
67 $config = $this->getConfig();
68 if ( $type !== 'error' && $config->get( 'RedirectOnLogin' ) !== null ) {
69 $returnTo = $config->get( 'RedirectOnLogin' );
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 ( $config->get( 'ForceHTTPS' )
81 || ( $config->get( 'SecureLogin' ) && $stickHTTPS )
82 ) {
83 $options = [ 'https' ];
84 $proto = PROTO_HTTPS;
85 } elseif ( $config->get( 'SecureLogin' ) && !$stickHTTPS ) {
86 $options = [ 'http' ];
87 $proto = PROTO_HTTP;
88 } else {
89 $options = [];
90 $proto = PROTO_RELATIVE;
91 }
92
93 if ( $type === 'successredirect' ) {
94 $redirectUrl = $returnToTitle->getFullUrlForRedirect( $returnToQuery, $proto );
95 $this->getOutput()->redirect( $redirectUrl );
96 } else {
97 $this->getOutput()->addReturnTo( $returnToTitle, $returnToQuery, null, $options );
98 }
99 }
100}
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:2001
const PROTO_HTTPS
Definition Defines.php:230
const PROTO_HTTP
Definition Defines.php:229
const PROTO_RELATIVE
Definition Defines.php:231
Interface for objects which can provide a MediaWiki context on request.