 function isNum(mySTR, max){
            mySTR = mySTR+' ';
            if(isNaN(parseInt(max)) || parseInt(max)< 1){
                if( Trim(mySTR).search(/^[0-9]+$/) != -1 ){
                    return true;
                }else{
                    return false;
                }
            }else{
                var char_test = true;
                for(cnt=0; cnt < max; cnt++){
                    if( Trim(mySTR).charAt(cnt).search(/^[0-9]$/) == -1 ){
                        char_test = false;
                        return false;
                    }
                }
                return char_test;
            }
        }
        function isEmail(string) {
            if (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
                return true;
            else
                return false;
		}
        function Trim(str){
            // Remove leading spaces and carriage returns

            while ((str.substring(0,1) == ' ') || (str.substring(0,1) == '\n') || (str.substring(0,1) == '\r')){
                str = str.substring(1,str.length);
            }
            // Remove trailing spaces and carriage returns

            while ((str.substring(str.length-1,str.length) == ' ') || (str.substring(str.length-1,str.length) == '\n') || (str.substring(str.length-1,str.length) == '\r')){
                str = str.substring(0,str.length-1);
            }
            return str;
        }
        function verifyFields_reg1( frmObj ) {
            engine = true;
            
            strErr = "Please complete the following required sections:\n\n";
            //frmObj = passed form element
            //firstName = name of text element
            /*
            if( Trim(frmObj.username.value) == '' ) {
                strErr += "User: Not Entered\n";
                engine=false;
            }
            */
            if( Trim(frmObj.username.value) == '' ) {
                strErr += "Your Email: Not Entered\n";
                engine=false;
            }else if( isEmail(Trim(frmObj.username.value)) == false ) {
                strErr += "Your Email: Not Valid Format\n";
                engine=false;
            }
            if( Trim(frmObj.username.value) != Trim(frmObj.email.value) ) {
                strErr += "Email: Do Not Match with the confirm value\n";
                engine=false;
            }
            if( Trim(frmObj.pwd.value) == '' ) {
                strErr += "Password (Line 1): Not Entered\n";
                engine=false;
            }
            //engine = false;
            if(engine==false){
                alert(strErr);
                return engine;
            }else{
                var reg1 = document.getElementById('frm-reg-1');
                reg1.Submit.value= 'Processing - Please Wait';
                var div = document.getElementById('ajax-response');
                div.innerHTML = "";
                var postData = "username="+frmObj.username.value+"&email="+frmObj.email.value+"&mode="+frmObj.mode.value+"&pwd="+frmObj.pwd.value;
                var request = YAHOO.util.Connect.asyncRequest('POST', '/designcenter/register-engine.php', callback, postData);
                return false;
                //return engine;
            }
		}
        
        function verifyFields_reg2( frmObj ) {
            engine = true;
            
            strErr = "Please complete the following required sections:\n\n";
            //frmObj = passed form element
            //firstName = name of text element
            if( Trim(frmObj.first_name.value) == '' ) {
                strErr += "First Name: Not Entered\n";
                engine=false;
            }
            if( Trim(frmObj.last_name.value) == '' ) {
                strErr += "Last name: Not Entered\n";
                engine=false;
            }
            if( Trim(frmObj.company.value) == '' ) {
                strErr += "Company: Not Entered\n";
                engine=false;
            }
            if( Trim(frmObj.phone.value) == '' ) {
                strErr += "Phone: Not Entered\n";
                engine=false;
            }
            /*
            if(engine==false){
                alert(strErr);
                return engine;
            }else{
                return engine;
            }
            */
            if(engine==false){
                alert(strErr);
                return engine;
            }else{
                /*var reg1 = document.getElementById('frm-reg-1');
                reg1.Submit.value= 'Processing - Please Wait';*/
                var reg2 = document.getElementById('frm-reg-2');
                reg2.Submit.value= 'Processing - Please Wait';
                var div = document.getElementById('ajax-response');
                div.innerHTML = "";
                var postData = ''
                for(i=0; i < reg2.elements.length; i++){
                    if(1==0){
                        postData += reg2.elements[i].name+'='+reg2.elements[i].value;
                    }else{
                        postData += '&'+reg2.elements[i].name+'='+reg2.elements[i].value;
                    }
                }
                var request = YAHOO.util.Connect.asyncRequest('POST', '/designcenter/register-engine.php', callback2, postData);
                return false;
                //return engine;
            }
		}
var handleSuccess = function(o){
	if(o.responseText !== undefined){
        var div = document.getElementById('ajax-response');
        var jsonResponse = eval('(' + o.responseText + ')');
        var div = document.getElementById('ajax-response');
        var reg1 = document.getElementById('frm-reg-1');
            var reg2 = document.getElementById('frm-reg-2');
        if(jsonResponse.status == true){
            fn_enable_form('frm-reg-2');
            fn_disable_form('frm-reg-1');
            reg1.Submit.value= 'Part 1 Completed';
            reg2.Submit.value= 'Finish Registration';
            reg2.email.value= jsonResponse.email;
            reg2.register_token.value= jsonResponse.register_token;
        }else{
            div.innerHTML = "<h1 style='color: red;'>Registration Failed</h1>";
            div.innerHTML += "<ul><li>"+jsonResponse.msg+"</li></ul>";
            reg1.Submit.value= 'Continue Registration';
            reg2.Submit.value= 'Complete Part 1 First';
            
        }
        
        /*
        var strOut = 'FORM ELEMENTS\n\n';
        for(i=0; i < reg2.elements.length; i++){
            strOut += '\n'+reg2.elements[i].type+' - '+reg2.elements[i].disabled;
        }
        alert(strOut);
        */
	}
}

var handleSuccess_reg2 = function(o){
	if(o.responseText !== undefined){
        var div = document.getElementById('ajax-response');
        //div.innerHTML = '<pre>'+o.responseText+'</pre>';
        var jsonResponse = eval('(' + o.responseText + ')');
        var div = document.getElementById('ajax-response');
        var reg1 = document.getElementById('frm-reg-1');
        var reg2 = document.getElementById('frm-reg-2');
        if(jsonResponse.status == true){
            fn_enable_form('frm-reg-2');
            fn_disable_form('frm-reg-1');
            reg1.Submit.value= 'Part 1 Completed';
            reg2.Submit.value= 'Part 2 Completed';
            document.location= jsonResponse.location;
        }else{
            div.innerHTML = "<h1 style='color: red;'>Registration Failed</h1>";
            div.innerHTML += "<ul><li>"+jsonResponse.msg+"</li></ul>";
            reg1.Submit.value= 'Part 1 Completed';
            reg2.Submit.value= 'Finish Registration';
        }
	}
}

var handleFailure = function(o){
    var div = document.getElementById('ajax-response');
    div.innerHTML += "<h1 style='color: red;'>Registration Failed</h1>";
    div.innerHTML += "<ul><li>Can not communicate with the server, please refresh the page and try again.</li></ul>";
}
var callback2 =
{
  success: handleSuccess_reg2,
  failure: handleFailure
};

var callback =
{
  success: handleSuccess,
  failure: handleFailure
};

function fn_disable_form(frm_id){
    myFrm = document.getElementById(frm_id);
    for(i=0; i < myFrm.elements.length; i++){
        myFrm.elements[i].disabled = true;
    }
    myTbl = document.getElementById('tbl-'+frm_id);
    myTbl.style.backgroundColor = '#EDEDED';
    myTbl.style.borderWidth = '1px';
    myTbl.style.borderStyle = 'solid';
	myTbl.style.color = '#666666';
    myTbl.style.borderColor = '#FFFFFF';
}

function fn_enable_form(frm_id){
    myFrm = document.getElementById(frm_id);
    for(i=0; i < myFrm.elements.length; i++){
        myFrm.elements[i].disabled = false;
    }
    myTbl = document.getElementById('tbl-'+frm_id);
    myTbl.style.backgroundColor = '#FFFFFF';
    myTbl.style.borderWidth = '1px';
    myTbl.style.borderStyle = 'solid';
    myTbl.style.borderColor = '#CCCCCC';
}
