var logonType = 0;
var validFlag = false;
var req;

function init(){
    logtype_u(logonType);
    ef("id00");
}

function initRequest() {
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
}

function forgotPwd(url) {  
    initRequest();
    req.onreadystatechange = processRequest;
    req.open("GET", url, true); 
    req.send(null);
}

function processRequest() { 
	
    if (req.readyState == 4) {
        if (req.status == 200) {
            var valid = req.responseXML.getElementsByTagName("valid")[0].childNodes[0].nodeValue;
            if (valid == "no") {
                sh("<font size='-2' color='red' face='Verdana, Arial, Helvetica, sans-serif'>Invalid account # or email. Please try again</font>", "notice" );	   	   	
            }else if (valid == "yes"){
		sh("<font size='-2' color='green' face='Verdana, Arial, Helvetica, sans-serif'>You will soon receive an email with your password.</font>", "notice" ); 
            	var obj = gb("logtype");
             	if (obj.length == undefined)
                    obj.checked = (obj.value == "V0");
		else{
		    for(var i = 0; i < obj.length; i++){
		        if (obj[i].value == "V0")
		            obj[i].checked = true;
		        else
		            obj[i].checked = false;
                    }
                }
                logtype_u(0);
                sv("","j_password");
                ef("j_password");              
            }else 
            sh("<font size='-2' color='red' face='Verdana, Arial, Helvetica, sans-serif'>Process is unsuccessfully completed. Please try again</font>", "notice" );
        }
    }
}

function logtype_u(t){
    logonType = t;
    switch(t){
        case 0: 	      
            sc("clsHide","userInput");
            sc("clsHide","email");
            sc("clsShow","accountInput");
            sc("form","j_password");
            sv("", "operator");
            sh("<b>Password</b>","tpwd");
            sh("Log on","tlogon");
            sh("","notice");
            ef("id00");
            break;
        case 1:    	
            sc("clsHide","accountInput");
            sc("clsHide","email");
            sc("clsShow","userInput");	
            sc("form","j_password");
            sv("", "operator");
            ef("j_username");
            sh("<b>Password</b>","tpwd");
            sh("Log on","tlogon");
            sh("","notice");
            break;
        case 2: 
            sc("clsHide","userInput");
            sc("clsHide","j_password");
            sc("clsShow","accountInput");
            sc("form","email");
            sv("forgotpwd", "operator");
            sh("<b>Email</b>","tpwd");
            sh("Submit","tlogon");
            sh("<font size='-2' color='blue' face='Verdana, Arial, Helvetica, sans-serif'>Please enter your account and email address</font>","notice");
            ef("id00");
            break;
    }
    if (gv("j_username") == "---") sv("", "j_username");

}

function logon(){
    var url = "";
	
    if (logonType == 0 || logonType == 2)
    	sv(gv("id00") + "-" + gv("id01") + "-" + gv("id02") + "-" + gv("id03"),"j_username");
    if (gv("j_username") == "abeacom3")
	  sv("AA-001-00515-01","j_username");

    if (logonType == 2){
        url = "http://priorityus.webubs.com/p1/ax?operator=forgot&id=" + gv("j_username") + "&email=" + gv("email") + "&oplog=forgot"; 
	forgotPwd(url);
	return;
    }	
    	
    if (gv("j_username") == "" || gv("j_username") == "---"){
    	sh("<font size='-2' color='blue' face='Verdana, Arial, Helvetica, sans-serif'>Please enter your account</font>","notice");
    	return;
    }

    validFlag = false;
	
    url = "http://priorityus.webubs.com/p1/ax?operator=logon&id=" + gv("j_username") + "&pwd=" + gv("j_password") + "&oplog=valid";		
	
    initRequest();
    req.open("GET", url, false); //true: syncronous
    req.send(null);
    if (req.status == 200) {
        var valid = req.responseXML.getElementsByTagName("valid")[0].childNodes[0].nodeValue;
        if (valid =="no") {
            sh("<font size='-2' color='red' face='Verdana, Arial, Helvetica, sans-serif'>Invalid account # or password. Please try again</font>", "notice" );	   	
        }else if (valid =="limit") {
            sh("<font size='-2' color='red' face='Verdana, Arial, Helvetica, sans-serif'>Please Retry in 24 hours.</font>", "notice" );	   	
        }else if (valid =="yes") {
            validFlag = true;
        }else{
            sh("<font size='-2' color='red' face='Verdana, Arial, Helvetica, sans-serif'>Process is unsuccessfully completed. Please try again</font>", "notice" );
        }
    }else
    	sh("<font size='-2' color='red' face='Verdana, Arial, Helvetica, sans-serif'>Process is unsuccessfully completed. Please try again</font>", "notice" );

    if (!validFlag)return;
	 
    var width = screen.width;
    var height = screen.height;
    if (width > 980 ){
        width = 980;
        height = 675;
    }else{
        width -= 20;
        height -= 50;
    }	
    
    //window.open (currentURL, "win_ims" , "height=" + height + ",width=" + width + ",statusbar=yes, resizable,scrollbars");  
    if (gv("j_username") == 'superdemo' || gv("j_username") == 'rmimgr2')
    	url = "/pbs/pbs01Pass2.html";
    else
    	url ="/pbs/pbs01Pass.html";
    window.open (url, "win_ims" , "height=" + height + ",width=" + width + ",statusbar=yes, resizable,scrollbars"); 
    sh("", "notice" );
    //sv("","j_password"); 
}

function nextField(n){
    var iv = gv("id0" + n);
    if (n == 0 && iv.length == 2){
	sv(iv.toUpperCase(), "id00");
    	ef("id01");
    }else if (n == 1 && iv.length == 3)
        ef("id02");
    else if (n == 2 && iv.length == 5)
        ef("id03");
    else if (n == 3 && iv.length == 2){
	if (logonType < 2)
           ef("j_password");
	else
	   ef("email");
    }
}

function ckenter(){
    if (event.keyCode==13)logon();
}
