var req = false;

function gE(id) {
	var gE = document.all ? document.all[id] : document.getElementById ? document.getElementById(id) : '';

	return gE;
}

function httpObj() {
	try {
		req = new XMLHttpRequest();
	}

	catch(e) {
		try {
			req = new ActiveXObject('Msxml2.XMLHTTP');
		}

		catch(e) {
			try {
				req = new ActiveXObject('Microsoft.XMLHTTP');
			}

			catch (e) {
				return;
			}
		}
	}
}

function fetch(URL, id, method, params) {
	if (!req) httpObj();

	if (method != 'POST') {
		req.open('GET', URL, true);
		req.onreadystatechange = function() { if (req.readyState == 4 && req.status == 200) gE(id).innerHTML = req.responseText; };
		req.send(null);
	}

	else {
		req.open('POST', URL, true);
		req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
		req.setRequestHeader('Content-length', params.length);
		req.setRequestHeader('Connection', 'close');
		req.onreadystatechange = function() { if (req.readyState == 4 && req.status == 200) gE(id).innerHTML = req.responseText; };
		req.send(params);
	}
}

function position(obj) {
	var left = top = 0;

	if (obj.offsetParent) {
		left = obj.offsetLeft;
		top = obj.offsetTop;

		while (obj = obj.offsetParent) {
			left += obj.offsetLeft;
			top += obj.offsetTop;
		}
	}

	return [left, top];
}