﻿// JavaScript File

/*
*	Parameters:
*	reqType:	  the HTTP request type, GET / POST
*	url:		  the url of the server program
*	asynch:		  send asychronosly or not
*	respHandle:	  the function to handle the response
*	arguments[4]: data of POST request 
*/
function httpRequest(reqType, url, asynch) {
	var request;
	// Mozilla / Gecko-based browsers
	if(window.XMLHttpRequest) {
		request = new XMLHttpRequest();
		if(request.overrideMimeType) {
			request.overrideMimeType("text/xml");
        }
	} else if(window.ActiveXObject) {
		request = new ActiveXObject("Msxml2.XMLHTTP");
		if(!request) {
			request = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	// test for null or undefined object
	if(request) {
		request.onreadystatechange = function() { handleResponse(request); }
		request.open(reqType, url, asynch);
		// if reqType is POST, 4th argument is the POSTed data
		if(reqType.toLowerCase() == "post") { 
			request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
			request.send(arguments[3]);
		} else {
			request.send(null);
		}
	} else {
		alert("Your browser doesn't permit AJAX operations!");
	}
}

function layerAct(id, istate) { // 1 = visible, 0 = hidden
	if(document.layers) {
		document.layers[id].visibility = istate ? "show" : "hide";
		document.layers[id].display = istate ? "block" : "none";
	} else if(document.getElementById) {
		var obj = document.getElementById(id);	
		obj.style.visibility = istate ? "visible" : "hidden";
		obj.style.display = istate ? "block" : "none";
	}
	else if(document.all) {
		document.all[id].style.visibility = istate ? "visible" : "hidden";
		document.all[id].style.display = istate ? "block" : "none";
	} else {
		alert("Layers are disabled in your browser!");
	}
}