﻿// JScript File
function processResponse(strResponse) {
    eval(strResponse);        
    var advContent = document.getElementById('advContent');    
    if (advContent) {
        advContent.innerHTML = content.replace(/^\r\n.*<div id=['"]advContent['"]>/i, "").replace(/<\/div>\r\n\s*$/i, "") + "&nbsp;";
    }
        
    if (success) {                
        if (isHomePage() && /AdvantagePlusSignOut/.test(content)) { 
            window.location.href = "/advplus/members/";  
            //Show waiting panel
            //The below code must be executed after window.location.href to avoid bug on IE6
            var ajax = new AJAX();
            ajax.displayLoading();           
        }
        if (typeof(gSite) == "object") 
            gSite.updateAdvMember(); 
        else 
            updateAdvMember_onComplete();
    }
}

function isHomePage() {
    return /https?:\/\/[^\/]+(\/|\/default.aspx|)(\?\S*)?$/.test(window.location.href);
}

function updateAdvMember_onComplete() {
    if (typeof(getRates) == 'function' && typeof(rateGrid) != 'undefined') getRates(rateGrid.HotelCode, rateGrid.data.StartedDate.ToString());
    if (typeof(rateGrid) != 'undefined') rateGrid.RemoveAll();        
    if (typeof UpdateWhenAdvLoginLogOut == 'function') UpdateWhenAdvLoginLogOut();
}

function AdvantagePlusLogin(fromPage,lblLastName,lblNumber,frm) {
    var isValid = true;
    
    if (isEmpty(frm.txtLastName.value) || (frm.txtLastName.value == lblLastName)) {
        frm.txtLastName.parentNode.className = "error";
        isValid = false;
    }else {
        frm.txtLastName.parentNode.className = "";
    }
    
    if (isEmpty(frm.txtMemberNumber.value) || (frm.txtMemberNumber.value == lblNumber)) {
        frm.txtMemberNumber.parentNode.className = "error";
        isValid = false;
    }else {
        frm.txtMemberNumber.parentNode.className = "";
    }
    
    if (isValid) {
        var AJAXConfig = new AJAX.Config();
        AJAXConfig.url = '/remote/advLogin.aspx';
        AJAXConfig.mode = AJAX.POST;
        AJAXConfig.processResponse = processResponse;

        //If member number is 6 digits, we will add "00" at the begining.
        var memberNumber = frm.txtMemberNumber.value.replace(/\s+/g, "");   //Remove all space
        if (memberNumber.length <= 6) {
            memberNumber = "00" + memberNumber;
            frm.txtMemberNumber.value = memberNumber
        }
        
        var login = new AJAX(AJAXConfig);
        login.request("mode=signin&fromPage=" + fromPage + "&cardNumber=" + frm.txtMemberNumber.value + "&lastName=" + frm.txtLastName.value + "&stayLogin=" + (frm.chkStay.checked?"yes":"no"));
    }
    
    return false;
}

function AdvantagePlusSignOut(fromPage) {
    var AJAXConfig = new AJAX.Config();
    AJAXConfig.url = '/remote/advLogin.aspx';
    AJAXConfig.mode = AJAX.POST;
    AJAXConfig.processResponse = processResponse;
    
    var login = new AJAX(AJAXConfig);
    login.request("mode=signout&fromPage=" + fromPage);
    
    return false;
}

function OnTextFocus(txt,val) {
	if (txt.value=='' || txt.value==val)
		txt.value='';
}

function OnTextblur(txt,val) {
	if (txt.value=='')
		txt.value=val;
}

function AdvSignout() {
    $.post("/remote/advLogin.aspx", 
        {
            mode: "signout"
        }
    );
}