﻿var req;
var m_CallerType = "";
var m_GlobalStatusArea = "Header1_spnStatusAreaGlobal";
var m_LogoutStatus = false;
var m_LoggedIn = false;
var m_PhoneOrder = false;
var m_WarrantyBrand = "RepairMaster";
function RemoveSpaces(Text){
	if (Text == "")
		return Text;
	while (Text.charAt(0) == " ")
		Text = Text.substr(1);
	if (Text == "")
		return Text;
	while (Text.charAt(Text.length - 1) == " ")
		Text = Text.substr(0, Text.length - 1);
	return Text;
}
function isValidEMail(EMail){
    if (EMail.indexOf(" ") > -1 || EMail.indexOf("..") > -1 || EMail.indexOf("@.") > -1)
        return false;
    var Ar1 = EMail.split("@");
    if (Ar1.length != 2 || Ar1[0].length == 0)
        return false;
    var Ar2 = Ar1[1].split(".");
    if (Ar2.length < 2 || Ar2[Ar2.length -1] == "")
        return false;
    return true;
}
function ChangeOption(RowIndex){
    var i = 0;    
    while (document.getElementById("row" + i) != null){
        if (i == RowIndex)
            document.getElementById("row" + i).style.display = "";
        else
            document.getElementById("row" + i).style.display = "none";
        i ++;
    };
}
function GetControlType(ControlID){
    if (ControlID.substr(0, 3) == "txt")
        return "textbox";
    else
        return "dropdown";
}
function GetControlPrefix(ControlID){
    var Prefix = ControlID.substr(0, 3);
    var RetVal;
    
    switch (Prefix){
    case "txt":
        RetVal = "txt";
        break;
    case "chk":
        RetVal = "chk";
        break;
    default:
        RetVal = "dd";
        break;
    };
    
    return RetVal;
}
function GetXMLHttpObject(){
    var RetVal = false;    
    try{
        RetVal = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e){
        try{
            RetVal = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E){
            RetVal = false;
        };
    };
    if (!RetVal || typeof RetVal == 'undefined')
        RetVal = new XMLHttpRequest();
    return RetVal;
}
function LogoutGlobal(){
    var url = "ProcessData.aspx?logout=true";    
    if (!req || typeof req == 'undefined')
        req = GetXMLHttpObject();    
    m_CallerType = "logout";
    req.onreadystatechange = HandleReadyStateChange;
    req.open("POST", url, true);
    req.send(null);
}
function HandleReadyStateChange(){
    if (req.readyState == 4){
        if (req.status != 200)
            req.send(null);
        else if (m_CallerType == "logout"){
            var URL = location.href.toLowerCase();
            if (URL.indexOf("account.aspx") > -1)
                if (typeof m_RunMode == "undefined" && URL.indexOf("http://") > -1)
                    location.href = URL.replace("http://","https://").replace("account.aspx","login.aspx").split("#")[0];
                else
                    location.href = URL.replace("account.aspx","login.aspx").split("#")[0];
            else if (URL.indexOf("contactus.aspx") > -1 || URL.indexOf("customerservice.aspx") > -1)
                location.href = URL.split("#")[0];
            else{
                var Name = GetGlobalName();
                SetGlobalStatus("<b>" + Name + "</b> has been successfully logged out")
                if ((URL.indexOf("collectdata.aspx") > -1 || m_PhoneOrder) && !m_LogoutStatus)
                    Logout();
            };
            m_LoggedIn = false;
        }
        else if (m_CallerType == "product"){
            document.body.style.cursor = "";
        };
    };
}
function GetGlobalName(){
    var Text;
    var StatusArea = document.getElementById(m_GlobalStatusArea);    
    if (StatusArea != null){
        Text = StatusArea.innerHTML.replace("<B>","<b>").replace("</B>","</b>");
        return Text.split("<b>")[1].split("</b>")[0];
    }
    else
        return "";
}
function SetGlobalStatus(Text){
    document.getElementById(m_GlobalStatusArea).innerHTML = Text;
}
function HideGlobalStatusArea(){
    document.getElementById(m_GlobalStatusArea).style.display = "none";
}
function EmptyDropdown(Dropdown){
    while (Dropdown.options.length > 0)
        Dropdown.remove(Dropdown.options.length - 1);
        //Dropdown.options[Dropdown.options.length - 1] = null;
}
function CheckIfSecure(){
    var URL = location.href.toLowerCase();    
    if (typeof m_RunMode == "undefined" && URL.indexOf("http://") > -1)
        location.href =  URL.replace("http://","https://").split("#")[0];
}
function ChangeCursor(Cursor){
    for (var i = 0; i < document.all.length; i ++)
        document.all[i].style.cursor = Cursor;
}
function GetFrameWindow(FrameID){
    if (navigator != null)
        if (GetBrowserType() == "IE")
            return document.getElementById(FrameID).contentWindow;
        else
            return window.frames[FrameID];
    else
        return window.frames[FrameID];
}
function GetBrowserType(){
    if (navigator != null)
        if (navigator.appName == "Microsoft Internet Explorer")
            return "IE";
    return "Other"
}
function isWholeNumber(str)
{
	var StringNum = "0123456789"	
	for (var i = 0; i < str.length; i ++)
	{
		var ch = str.substring(i, i + 1);
		if (StringNum.indexOf(ch) == -1)
			return false;
	};	
	return true;
}
function GetFirstNonNumericCharIndex(str){
	var StringNum = "0123456789"	
	for (var i = 0; i < str.length; i ++)
	{
		var ch = str.substr(i, 1);
		if (StringNum.indexOf(ch) == -1)
			return i;
	};	
	return -1;
}
function ChangeTabMain(TabIndex){
    var oTable;
    var Postfix = "";    
    oTable = document.getElementById("tblTabForm");    
    var oRow = oTable.rows[0];
    for (var i = 0; i < oRow.cells.length / 2; i ++){
        var oDataRow = oTable.rows[i + 2];        
        if (i == TabIndex){
            oRow.cells[i*2].className = "mausover" + Postfix;
            oDataRow.className = "";
        }
        else{
            oRow.cells[i*2].className = "mausnotover" + Postfix;
            oDataRow.className = "InvRow";
        };
    };
    var txtSelTab = document.getElementById("txtSelTab");
    if (txtSelTab != null){
        txtSelTab.value = TabIndex;
    };
}
function ProcessKeystroke(ReadControl,WriteControl,MaxCharacters){
    var CurrentLength = ReadControl.value.length;    
    if (CurrentLength > MaxCharacters){
        ReadControl.value = ReadControl.value.substr(0,MaxCharacters);
        return;
    }
    WriteControl.innerHTML = CurrentLength;
}
function IIF(Cond,TrueExp,FalseExp){
    try{
        if (Cond){
            return TrueExp;
        }
        else{
            return FalseExp;
        };
    }
    catch (E){
        return FalseExp;
    };
}
function isPositiveWholeNumber(Number)
{
    if (Number == ""){
        return false;
    };
    if (!isNaN(Number)){
        if (Number <= 0){
            return false;
        }
        else if (Math.floor(Number) != Number){
            return false;
        };
    }
    else{
        return false;
    };
    
    return true;
}
