﻿// JScript File
///
/// Return a XMLHTTPRequest in a browser independent fashion.
///
function GetXMLHttpLogin()
{
    var xmlhttp=false;
    
    try 
    { 
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } 
    catch (e) 
    {
        try 
        {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E)
        {
            xmlhttp = false;
        }
    }

    // Mozilla then?
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
       xmlhttp = new XMLHttpRequest();
    }
    
    return xmlhttp;
}

function Logout(lblLoginAs, txtPassword, objLogout, txtIsLoggedInOut)
{

    var objLoginAs = document.getElementById(lblLoginAs);
    var objPass = document.getElementById(txtPassword);
    var objIsLoggedInOut = document.getElementById(txtIsLoggedInOut);
    
    var xmlhttp = GetXMLHttpLogin();
    
    xmlhttp.open("GET", "validateLogin.aspx?action=logout", true);
    xmlhttp.onreadystatechange=function() 
    {
        if (xmlhttp.readyState==4)
        {  
	        if(xmlhttp.status == 200)
	        {
		        ClientNode = xmlhttp.responseXML.documentElement;
		        if(ClientNode!=null)
		        {
    			    var varMsg = ClientNode.getElementsByTagName('Message');
    			    if(GetInnerText(varMsg[0])=="Logout")
    			    {
    			        objIsLoggedInOut.value = "Logout";
    			        objLoginAs.innerText = "";
    			        objLogout.style.display = "none";
    			        
    			        objPass.value = "";

    			        //var divLogin = document.getElementById("wrapper");
    			        //divLogin.style.display = "none";
                        var divLogin = document.getElementById("contact-button");
                        var divWrapper = document.getElementById("login_wrapper");
			            divLogin.style.display = "";
			            divWrapper.style.display = "";
		            }
		            else
		            {
		                alert(GetInnerText(varMsg[0]));
		            }
		            
                }
                else
                {
                    alert( "else client node null");
                }
            }
        }
        else
        {
            //alert( xmlhttp.readyState );
        }
    }
    xmlhttp.send(null)   

}


function validateLogin(txtUserName, txtPassword, lblLoginAs, btnLogout, txtIsLoggedInOut)
{
    var objUser = document.getElementById(txtUserName);
    var objPass = document.getElementById(txtPassword);
    var objLoginAs = document.getElementById(lblLoginAs);
    var objLogout = document.getElementById(btnLogout);
    var objIsLoggedInOut = document.getElementById(txtIsLoggedInOut);

    var xmlhttp = GetXMLHttpLogin();

    xmlhttp.open("GET", "validateLogin.aspx?action=login&uid="+objUser.value+"&pwd="+objPass.value, true);
    xmlhttp.onreadystatechange=function() 
    {
        if (xmlhttp.readyState==4)
        {  
	        if(xmlhttp.status == 200)
	        {
		        ClientNode = xmlhttp.responseXML.documentElement;
		        if(ClientNode!=null)
		        {
    			    var varMsg = ClientNode.getElementsByTagName('Message');
    			    if(GetInnerText(varMsg[0])=="validated")
    			    {
    			    
    			        objIsLoggedInOut.value = "Login";
    			        objLoginAs.innerHTML = "You are logged in as <strong>" + GetInnerText(varMsg[1]) + "</strong>" ;
    			        
    			        
    			        objLoginAs.style.display = "";
    			        objLogout.style.display = "";
    			    
    			        //var divLogin = document.getElementById("wrapper");
    			        //divLogin.style.display = "none";
                        var divLogin = document.getElementById("contact-button");
                        var divWrapper = document.getElementById("login_wrapper");
			            divLogin.style.display = "none";
			            divWrapper.style.display = "none";
		            }
		            else
		            {
		                alert(GetInnerText(varMsg[0]));
		            }
		            
                }
                else
                {
                    alert( "else client node null");
                }
            }
        }
        else
        {
            //alert( xmlhttp.readyState );
        }
    }
    xmlhttp.send(null)   
}

function GetInnerText (node)
{
	 return (node.textContent || node.innerText || node.text) ;
}


