/**
 * AJAX funcs
 */
function createXMLHttp() {
	if (typeof XMLHttpRequest != "undefined") { // for Mozilla

		return new XMLHttpRequest();
	} else if (window.ActiveXObject) { // for Internet Explorer (all versions)
		var aVersions = [ "MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0",
				"MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp" ];
		for ( var i = 0; i < aVersions.length; i++) {
			try { //
				var oXmlHttp = new ActiveXObject(aVersions[i]);

				return oXmlHttp;
			} catch (oError) {

			}
		}
		throw new Error("Can't create XMLHttp.");
	}
}

/* Important function - creates request path
 */
function getRequestBody(oForm) {
	var aParams = new Array();
	for ( var i = 0; i < oForm.elements.length; i++) {
		var sParam = encodeURIComponent(oForm.elements[i].name);
		sParam += "=";
		sParam += encodeURIComponent(oForm.elements[i].value);
		aParams.push(sParam);
	}
	return aParams.join("&");
}

function sendRequest(action) {
	if (!document.getElementById("agree").checked) {
		saveResult("Please, read and accept license agreement")
	} else {
		var oForm = document.getElementById("loginForm");
		var sBody = getRequestBody(oForm);
		var oXmlHttp = createXMLHttp();

		oXmlHttp.open("POST", action, true);
		oXmlHttp.setRequestHeader("Content-Type",
				"application/x-www-form-urlencoded");

		oXmlHttp.onreadystatechange = function() {
			if (oXmlHttp.readyState == 4) {
				var response = oXmlHttp.responseText;
				if (oXmlHttp.status == 200) {
//					if (response.toLowerCase() == "success".toLowerCase()) {
//						location.href = action + "/download";
//						closePopup();
//					}
						var sElem = document.getElementById("divResult");
						sElem.innerHTML = response;

				} else {
					saveResult("Error: " + response);
				}
			}
		};
		oXmlHttp.send(sBody);
	}
}

function sendPurchaseRequest(action) {
	var oForm = document.getElementById("purchaseForm");
	var sBody = getRequestBody(oForm);
	var oXmlHttp = createXMLHttp();

	oXmlHttp.open("POST", action, true);
	oXmlHttp.setRequestHeader("Content-Type",
			"application/x-www-form-urlencoded");

	oXmlHttp.onreadystatechange = function() {
		if (oXmlHttp.readyState == 4) {
			if (oXmlHttp.status == 200) {
				var response = oXmlHttp.responseText;
				if (response.toLowerCase() == "success".toLowerCase()) {
					closePopup();
				}
				saveResult(response);
			} else {
				saveResult("Error: " + oXmlHttp.statusText);
			}
		}
	};
	oXmlHttp.send(sBody);
}

function closePopup() {
	Element.remove($('lbContent'));
	$('overlay').style.display = "none";
	$('lightbox').style.display = "none";
}

function closePopupAndDownload(url) {
	document.location=url;
	closePopup();
}

function saveResult(sText) {
	var sElem = document.getElementById("divStatus");
	sElem.innerHTML = sText;
}