function create_xhr() {
	var retval = false;
	
	if (window.XMLHttpRequest && typeof XMLHttpRequest != 'undefined') {
		try {
			retval = new XMLHttpRequest();
		} catch (e) {
			retval = false;
		}
	} else if (window.ActiveXObject) {
		try {
			retval = new ActiveXObject('Msxml2.XMLHTTP');
		} catch (e) {
			try {
				retval = new ActiveXObject('Microsoft.XMLHTTP');
			} catch (e2) {
				retval = false;
			}
		}
	}
	return retval;
}

function request_data(p_request, p_URL, p_data, p_func, p_method) {
	if (p_request) {
		p_request.onreadystatechange = p_func;
		if (p_method == 'GET') {
			p_request.open('GET', p_URL + '?' + p_data, true);
			p_request.send(null);
		} else {
			p_request.open('POST', p_URL, true);
			p_request.send(p_data);
		}
	}
}

var request;

function $(p) {
	return document.getElementById(p);
}