var login_http_request = false;

function noCache(uri){
    return uri.concat(/\?/.test(uri)?"&":"?","noCache=",(new Date).getTime(),".",Math.random()*1234567);
}

function makeLoginRequest(url, parameters) {
    login_http_request = false;
    if (window.XMLHttpRequest) { // Mozilla, Safari,...
	login_http_request = new XMLHttpRequest();
	if (login_http_request.overrideMimeType) {
	    // set type accordingly to anticipated content type
	    //login_http_request.overrideMimeType('text/xml');
	    login_http_request.overrideMimeType('text/html');
	}
    } else if (window.ActiveXObject) { // IE
	try {
	    login_http_request = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
	    try {
		login_http_request = new ActiveXObject("Microsoft.XMLHTTP");
	    } catch (e) {}
	}
    }
    if (!login_http_request) {
	alert('Cannot create XMLHTTP instance');
	return false;
    }

    login_http_request.onreadystatechange = doLoginResponse;

    login_http_request.open('POST', noCache(url), true);
    login_http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    login_http_request.setRequestHeader("Content-length", parameters.length);
    login_http_request.setRequestHeader("Connection", "close");
    login_http_request.send(parameters);
}

function doLoginResponse() {
    if (login_http_request.readyState == 4) {
	if (login_http_request.status == 200) {
	    result = login_http_request.responseText;
	    document.getElementById('myloginarea').innerHTML = result;
	    if (document.getElementById('Email') != null) {
	        document.getElementById('Email').focus();
	    }
            FB.XFBML.Host.parseDomTree();
	} else {
	    alert('alertContents: There was a problem with the request.');
	}
    }
}

function getLogin(oper) {
    var poststr = "opcode=" + oper;
    if (oper == "dologin") {
	poststr = poststr + "&email=" + document.getElementById('Email').value + 
		"&password=" + document.getElementById('Password').value +
		"&remember=" + document.getElementById('RememberMe').checked;
    } else if (oper == "findpwd") {
	poststr = poststr + "&email=" + document.getElementById('Email').value
    }
    poststr = encodeURI(poststr);
    makeLoginRequest('http://www.zoomatlas.com/mediawiki/skins/za_skin/DoLogin.php', poststr);
    return true;
}

function g_refreshHeader() {
    updateLIDforElement("zasignin");
    updateLIDforElement("zalogout");
    updateLIDforElement("fb-connect-link");
    updateLIDforElement("zaforgotpwd");
}

function updateLIDforElement(sElementId) {
    var oElement = document.getElementById(sElementId);
    if (oElement) {
        oElement.href = "#" + g_SelectedLid;
    }
}
