137 lines
4.0 KiB
ActionScript
137 lines
4.0 KiB
ActionScript
import flash.external.*;
|
|
import gfx.controls.TextInput;
|
|
import gfx.controls.Button;
|
|
|
|
class Screens.RecoverPasswordScreen extends Screen
|
|
{
|
|
private var userNameEdit:TextInput;
|
|
private var recoverPasswordByUsername:Button;
|
|
private var goBackToConnectedToServer:Button;
|
|
|
|
private var bForgotPassword:Boolean;
|
|
private var btnBack:Button;
|
|
|
|
private var btnSendEmail:Button;
|
|
private var btnSendUsername:Button;
|
|
private var btnSendAnswer:Button;
|
|
|
|
private static var mInstance:RecoverPasswordScreen;
|
|
|
|
public function RecoverPasswordScreen()
|
|
{
|
|
ConsoleWindow.Trace("Constructing RecoverPasswordScreen");
|
|
|
|
mScreenId = ScreenID.RECOVER_PASSWORD;
|
|
mScreenTabId = ScreenTab.ID_LOGIN;
|
|
|
|
mInstance = this;
|
|
}
|
|
|
|
public static function get Instance():RecoverPasswordScreen
|
|
{
|
|
return mInstance;
|
|
}
|
|
|
|
public function VOnFinishedLoading():Void
|
|
{
|
|
//Add click event for buttons
|
|
goBackToConnectedToServer.addEventListener("click", this, "goBackToConnectedToServerFunc");
|
|
btnBack.addEventListener("click", this, "Back");
|
|
btnSendUsername.addEventListener("click", this, "f2c_RecoverPasswordByUsername");
|
|
btnSendAnswer.addEventListener("click", this, "f2c_GetPasswordByPasswordRecoveryAnswer");
|
|
|
|
//Add callbacks for C++
|
|
ExternalInterface.addCallback("c2f_RecoverPasswordByUsername", this, c2f_RecoverPasswordByUsername);
|
|
ExternalInterface.addCallback("c2f_GetPasswordByPasswordRecoveryAnswer", this, c2f_GetPasswordByPasswordRecoveryAnswer);
|
|
|
|
super.VOnFinishedLoading();
|
|
}
|
|
|
|
public function SetMode( forgotPassword:Boolean ):Void
|
|
{
|
|
ConsoleWindow.Trace("SetMode..." + forgotPassword);
|
|
bForgotPassword = forgotPassword;
|
|
}
|
|
|
|
public function OnShow():Void
|
|
{
|
|
if ( bForgotPassword )
|
|
{
|
|
btnSendEmail._visible = false;
|
|
btnSendUsername._visible = true;
|
|
btnSendAnswer._visible = false;
|
|
gotoAndStop("Password1");
|
|
}
|
|
else
|
|
{
|
|
btnSendEmail._visible = true;
|
|
btnSendUsername._visible = false;
|
|
btnSendAnswer._visible = false;
|
|
gotoAndStop("Username");
|
|
}
|
|
}
|
|
|
|
//gets user recovery question
|
|
private var mTempUsername:String;
|
|
public function f2c_RecoverPasswordByUsername():Void
|
|
{
|
|
mTempUsername = this["tiUserName"].text;
|
|
//ConsoleWindow.Trace("f2c_RecoverPasswordByUsername.... username = " + );
|
|
ExternalInterface.call("f2c_RecoverPasswordByUsername", mTempUsername);
|
|
}
|
|
|
|
//try to get password by answering the secret question
|
|
public function f2c_GetPasswordByPasswordRecoveryAnswer():Void
|
|
{
|
|
ConsoleWindow.Trace("calling f2c_GetPasswordByPasswordRecoveryAnswer.. answer = " + this["tiAnswer"].text);
|
|
ExternalInterface.call("f2c_GetPasswordByPasswordRecoveryAnswer", mTempUsername, this["tiAnswer"].text);
|
|
}
|
|
|
|
public function goBackToConnectedToServerFunc():Void
|
|
{
|
|
//_root.gotoAndPlay("ConnectedToServer");
|
|
LobbyInterface.Instance.ShowScreen( ScreenID.LOGIN );
|
|
}
|
|
|
|
public function c2f_RecoverPasswordByUsername(resultIdentifier:String, username:String, email:String, secretQuestion:String ):Void
|
|
{
|
|
ConsoleWindow.Trace("c2f_RecoverPasswordByUsername..." + arguments);
|
|
|
|
switch (resultIdentifier)
|
|
{
|
|
case "SUCCESS":
|
|
gotoAndStop("Password2");
|
|
btnSendEmail._visible = false;
|
|
btnSendUsername._visible = false;
|
|
btnSendAnswer._visible = true;
|
|
this["tfSecretQuestion"].text = secretQuestion;
|
|
break;
|
|
}
|
|
|
|
if ( resultIdentifier != "SUCCESS" )
|
|
{
|
|
LobbyInterface.Instance.CreateMessageBox( resultIdentifier );
|
|
}
|
|
}
|
|
|
|
public function c2f_GetPasswordByPasswordRecoveryAnswer(resultIdentifier:String, username:String, secretAnswer:String, password:String ):Void
|
|
{
|
|
ConsoleWindow.Trace("c2f_GetPasswordByPasswordRecoveryAnswer..." + arguments);
|
|
|
|
switch (resultIdentifier)
|
|
{
|
|
case "SUCCESS":
|
|
break;
|
|
}
|
|
|
|
if ( resultIdentifier != "SUCCESS" )
|
|
{
|
|
LobbyInterface.Instance.CreateMessageBox( resultIdentifier );
|
|
}
|
|
}
|
|
|
|
public function Back():Void
|
|
{
|
|
LobbyInterface.Instance.ShowScreen( ScreenID.LOGIN );
|
|
}
|
|
} |