MediaWiki  master
UserNotLoggedIn Class Reference

Redirect a user to the login page. More...

Inheritance diagram for UserNotLoggedIn:
Collaboration diagram for UserNotLoggedIn:

Public Member Functions

 __construct ( $reasonMsg='exception-nologin-text', $titleMsg='exception-nologin', $params=[])
 
 report ()
 Redirect to Special:Userlogin if the specified message is compatible. More...
 
- Public Member Functions inherited from ErrorPageError
 __construct ( $title, $msg, $params=[])
 Note: these arguments are keys into wfMessage(), not text! More...
 
 getMessageObject ()
 Return a Message object for this exception. More...
 
 report ()
 
- Public Member Functions inherited from MWException
 getHTML ()
 If $wgShowExceptionDetails is true, return a HTML message with a backtrace to the error, otherwise show a message to ask to set it to true to show that information. More...
 
 getPageTitle ()
 Return the title of the page when reporting this error in a HTTP response. More...
 
 getText ()
 Get the text to display when reporting the error on the command line. More...
 
 isLoggable ()
 Whether to log this exception in the exception debug log. More...
 
 msg ( $key, $fallback)
 Get a message from i18n. More...
 
 report ()
 Output a report about the exception and takes care of formatting. More...
 
 reportHTML ()
 Output the exception report using HTML. More...
 
 useMessageCache ()
 Can the extension use the Message class/wfMessage to get i18n-ed messages? More...
 
 useOutputPage ()
 Should the exception use $wgOut to output the error? More...
 

Additional Inherited Members

- Static Public Member Functions inherited from MWException
static isCommandLine ()
 Check whether we are in command line mode or not to report the exception in the correct format. More...
 
- Public Attributes inherited from ErrorPageError
 $msg
 
 $params
 
 $title
 

Detailed Description

Redirect a user to the login page.

This is essentially an ErrorPageError exception which by default uses the 'exception-nologin' as a title and 'exception-nologin-text' for the message.

Note
In order for this exception to redirect, the error message passed to the constructor has to be explicitly added to LoginHelper::validErrorMessages or with the LoginFormValidErrorMessages hook. Otherwise, the user will just be shown the message rather than redirected.
Example:
if( $user->isAnon() ) {
throw new UserNotLoggedIn();
}

Note the parameter order differs from ErrorPageError, this allows you to simply specify a reason without overriding the default title.

Example:
if( $user->isAnon() ) {
throw new UserNotLoggedIn( 'action-require-loggedin' );
}
See also
T39627
Since
1.20

Definition at line 53 of file UserNotLoggedIn.php.

Constructor & Destructor Documentation

◆ __construct()

UserNotLoggedIn::__construct (   $reasonMsg = 'exception-nologin-text',
  $titleMsg = 'exception-nologin',
  $params = [] 
)
Note
The value of the $reasonMsg parameter must be set with the LoginFormValidErrorMessages hook if you want the user to be automatically redirected to the login form.
Parameters
string$reasonMsgA message key containing the reason for the error. Optional, default: 'exception-nologin-text'
string$titleMsgA message key to set the page title. Optional, default: 'exception-nologin'
array$paramsParameters to wfMessage(). Optional, default: []

Definition at line 66 of file UserNotLoggedIn.php.

References ErrorPageError\$params.

Member Function Documentation

◆ report()

UserNotLoggedIn::report ( )

Redirect to Special:Userlogin if the specified message is compatible.

Otherwise, show an error page as usual.

Definition at line 78 of file UserNotLoggedIn.php.

References $context, ErrorPageError\$msg, $output, $query, RequestContext\getMain(), MediaWiki\getTitle(), SpecialPage\getTitleFor(), LoginHelper\getValidErrorMessages(), MWException\msg(), and wfArrayToCgi().


The documentation for this class was generated from the following file: