로그인

투비교육포털앱의 로그인 화면 입니다.

로그인은 회원(인터넷 신청)과 비회원(영업대표 신청) 두가지 방식으로 로그인을 처리하고 로그인 정보를 기억하는 기능이 구현되어 있습니다.

화면구성

소스참고
EduHub\mobile\Mobile_frmLogin.xfdl

log_1

1 Tab
두가지 로그인 방식을 제공하기 위해 Tab 컴포넌트를 배치하여 입력 받는 컴포넌트를 컨트롤 합니다.

2 3. Edit
사용자 아이디와 패스워드를 입력 받습니다.
회원 로그인 경우 아이디와 패스워드, 비회원 로그인 경우 성명과 이메일 정보를 이용합니다.

4 Static
사용자가 입력한 값에 대해 정합성 체크하여 오류 발생을 표현할 메시지를 입니다.

5 Checkbox
사용자 아이디와 패스워드 정보를 기억하는 기능을 처리합니다.

6 Button
서버와 통신하여 로그인 처리를 합니다.

주요 기능 구현 설명

  1. TabPage가 선택될 때 Edit 컴포넌트의 displaynulltext 와 password 속성을 로그인 방식에 따라 변경 합니다.

this.tabTitle_onchanged = function(obj:nexacro.Tab,e:nexacro.TabIndexChangeEventInfo)
{  
    ...
	if(this.tabTitle.tabindex == 0){    
		this.edtUserId.set_displaynulltext("LoginID");
		this.edtPasswd.set_displaynulltext("Password");
		this.edtPasswd.set_password(true);	
	} 
    else {  
		this.edtUserId.set_displaynulltext("성명");
		this.edtPasswd.set_displaynulltext("이메일주소");
		this.edtPasswd.set_password(false);
	}
    ...
};
  1. 사용자ID 또는 패스워드의 입력 값을 체크하여 미 입력시 Static 컴포넌트에 안내 메시지를 출력 합니다.

if((this.edtUserId.value == undefined) || (this.edtUserId.value.length == 0))
{
	this.stLoginId.set_text("LoginID를 입력하세요.");
	this.stLoginId.set_visible(true);
	this.edtUserId.setFocus();
	return;  
}

모바일에서 alert을 통한 메시지 처리는 사용자 경험에 불편함을 발생할 수 있어 Static에 메시지를 표현하는 방법으로 구현

  1. 서버와 통신하여 로그인 처리를 합니다.

    로그인 정보를 가지는 Dataset은 Global 영역에 정의하여 사용합니다.

this.fn_login = function()      
{	   
	...	
	var strSvcId    = "LoginInfo";
	var strSvcUrl   = "ServiceUrl::EduSqlManager/JspAgent.jsp"; 
	var inData      = "";       
	var outData     = "gdsUserInfo=output gdsUserEduList=output2";
	var strArg      = args;        
	var callBackFnc = "fnCallback";
 
	this.gfn_xtransCommon(strSvcId,
						  strSvcUrl,
						  inData,
						  outData,
						  strArg,
						  callBackFnc,
						  true);
	...	
};
  1. 로그인 정보 기억하기

    로그인이 정상적으로 처리 되고 "로그인정보기억" 체크가 되어 있는 경우 사용자 ID와 패스워드 정보를 개인화 데이터로 저장합니다.

this.fn_setInfo = function()   
{ 
	if(this.chkSaveFlag.value == true)
	{
		nexacro.setPrivateProfile("EduHub_LoinID",this.edtUserId.value);
		nexacro.setPrivateProfile("EduHub_LoinPwd",this.edtPasswd.value);
		nexacro.setPrivateProfile("EduHub_chkSaveFlag",this.chkSaveFlag.value);
	} 
    else 
    { 
		nexacro.setPrivateProfile("EduHub_LoinID","");
		nexacro.setPrivateProfile("EduHub_LoinPwd","");     
		nexacro.setPrivateProfile("EduHub_chkSaveFlag",false);  
	}   
    ...
}

nexacro.setPrivateProfile( strKey, varVal )


어플리케이션에서 개인화 데이터를 저장하는 메소드로

개인화 데이터는 어플리케이션이 구동될 때 설정한 Key 값 별로 따로 관리되며 "nexacro.xml" 파일에 저장됩니다

  1. 로그인 정보 가져오기

    화면이 로드된 후 개인화 데이터에 저장되어 있는 사용자ID와 패스워드 정보를 로그인 화면에 표현 합니다.

this.frmLogin_onload = function(obj:nexacro.Form,e:nexacro.LoadEventInfo) 
{
	var EduHub_LoinGubun = nexacro.getPrivateProfile("EduHub_LoinGubun");  
	var EduHubLoinID = nexacro.getPrivateProfile("EduHub_LoinID");
	var EduHubLoinPwd = nexacro.getPrivateProfile("EduHub_LoinPwd");
    ...
	this.edtUserId.set_value(EduHubLoinID);
	this.edtPasswd.set_value(EduHubLoinPwd);
	this.chkSaveFlag.set_value(true);
    ...
}

nexacro.getPrivateProfile( strKey )


어플리케이션에서 저장한 개인화 데이터를 반환하는 메소드입니다.

참고사항

회원 가입은 어디서 등록이 가능한가요?

'투비교육포털'에서는 별도의 회원가입 신청을 하지 않습니다. 
해당 회원정보는 투비소프트 고객지원팀에서 운영하는 기술지원사이트 
http://support.tobesoft.co.kr 에서 등록된 정보를 활용합니다.