<?php
-
+/**
+ *
+ * @package MediaWiki
+ * @subpackage SpecialPage
+ */
+
+/**
+ *
+ */
require_once('UserMailer.php');
-function wfSpecialUserlogin()
-{
+/**
+ * consutrctor
+ */
+function wfSpecialUserlogin() {
global $wgCommandLineMode;
global $wgRequest;
if( !$wgCommandLineMode && !isset( $_COOKIE[ini_get("session.name")] ) ) {
$form->execute();
}
+/**
+ *
+ * @package MediaWiki
+ * @subpackage SpecialPage
+ */
class LoginForm {
var $mName, $mPassword, $mRetype, $mReturnto, $mCookieCheck, $mPosted;
var $mAction, $mCreateaccount, $mCreateaccountMail, $mMailmypassword;
function execute() {
if ( !is_null( $this->mCookieCheck ) ) {
$this->onCookieRedirectCheck( $this->mCookieCheck );
+ return;
} else if( $this->mPosted ) {
if( $this->mCreateaccount ) {
return $this->addNewAccount();
$this->mainLoginForm( "" );
}
- /* private */ function addNewAccountMailPassword()
- {
+ /**
+ * @access private
+ */
+ function addNewAccountMailPassword() {
global $wgOut;
if ("" == $this->mEmail) {
}
- /* private */ function addNewAccount()
- {
+ /**
+ * @access private
+ */
+ function addNewAccount() {
global $wgUser, $wgOut;
global $wgDeferredUpdateList;
}
- /* private */ function addNewAccountInternal()
- {
+ /**
+ * @access private
+ */
+ function addNewAccountInternal() {
global $wgUser, $wgOut;
global $wgMaxNameChars;
global $wgMemc, $wgAccountCreationThrottle, $wgDBname, $wgIP;
$name = trim( $this->mName );
$u = User::newFromName( $name );
- if ( ( "" == $name ) ||
+ if ( is_null( $u ) ||
+ ( "" == $name ) ||
preg_match( "/\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}/", $name ) ||
(strpos( $name, "/" ) !== false) ||
(strlen( $name ) > $wgMaxNameChars) ||
return $u;
}
-
-
- /* private */ function processLogin()
- {
+ /**
+ * @access private
+ */
+ function processLogin() {
global $wgUser;
global $wgDeferredUpdateList;
return;
}
$u = User::newFromName( $this->mName );
+ if( is_null( $u ) ) {
+ $this->mainLoginForm( wfMsg( "noname" ) );
+ return;
+ }
$id = $u->idForName();
if ( 0 == $id ) {
$this->mainLoginForm( wfMsg( "nosuchuser", $u->getName() ) );
}
}
- /* private */ function mailPassword()
- {
+ /**
+ * @access private
+ */
+ function mailPassword() {
global $wgUser, $wgDeferredUpdateList, $wgOutputEncoding;
global $wgCookiePath, $wgCookieDomain, $wgDBname;
return;
}
$u = User::newFromName( $this->mName );
+ if( is_null( $u ) ) {
+ $this->mainLoginForm( wfMsg( "noname" ) );
+ return;
+ }
$id = $u->idForName();
if ( 0 == $id ) {
$this->mainLoginForm( wfMsg( "nosuchuser", $u->getName() ) );
}
- /* private */ function mailPasswordInternal( $u )
- {
+ /**
+ * @access private
+ */
+ function mailPasswordInternal( $u ) {
global $wgDeferredUpdateList, $wgOutputEncoding;
global $wgPasswordSender, $wgDBname, $wgIP;
global $wgCookiePath, $wgCookieDomain;
if ( "" == $u->getEmail() ) {
- $this->mainLoginForm( wfMsg( "noemail", $u->getName() ) );
- return;
+ return wfMsg( "noemail", $u->getName() );
}
$np = User::randomPassword();
$u->setNewpassword( $np );
}
-
-
-
- /* private */ function successfulLogin( $msg )
- {
+ /**
+ * @access private
+ */
+ function successfulLogin( $msg ) {
global $wgUser;
global $wgDeferredUpdateList;
global $wgOut;
$wgOut->setPageTitle( wfMsg( "loginsuccesstitle" ) );
$wgOut->setRobotpolicy( "noindex,nofollow" );
$wgOut->setArticleRelated( false );
- $wgOut->addHTML( $msg );
+ $wgOut->addWikiText( $msg );
$wgOut->returnToMain();
}
- function userNotPrivilegedMessage()
- {
+ function userNotPrivilegedMessage() {
global $wgOut, $wgUser, $wgLang;
$wgOut->setPageTitle( wfMsg( "whitelistacctitle" ) );
$wgOut->returnToMain( false );
}
- /* private */ function mainLoginForm( $err )
- {
+ /**
+ * @access private
+ */
+ function mainLoginForm( $err ) {
global $wgUser, $wgOut, $wgLang;
global $wgDBname, $wgAllowRealName;
$ca = wfMsg( "createaccount" );
$cam = wfMsg( "createaccountmail" );
$ye = wfMsg( "youremail" );
- if ($wgAllowRealName) {
+ if( $wgAllowRealName ) {
$yrn = wfMsg( "yourrealname" );
} else {
$yrn = '';
$wgOut->addHTML( $endText );
}
- /* private */ function hasSessionCookie()
- {
+ /**
+ * @access private
+ */
+ function hasSessionCookie() {
global $wgDisableCookieCheck;
return ( $wgDisableCookieCheck ) ? true : ( "" != $_COOKIE[session_name()] );
}
- /* private */ function cookieRedirectCheck( $type )
- {
+ /**
+ * @access private
+ */
+ function cookieRedirectCheck( $type ) {
global $wgOut, $wgLang;
$titleObj = Title::makeTitle( NS_SPECIAL, "Userlogin" );
return $wgOut->redirect( $check );
}
- /* private */ function onCookieRedirectCheck( $type ) {
+ /**
+ * @access private
+ */
+ function onCookieRedirectCheck( $type ) {
global $wgUser;
if ( !$this->hasSessionCookie() ) {
}
}
- /* private */ function throttleHit( $limit ) {
+ /**
+ * @access private
+ */
+ function throttleHit( $limit ) {
global $wgOut;
$wgOut->addWikiText( wfMsg( 'acct_creation_throttle_hit', $limit ) );