// JSON

var json = {
	url : null,
	data : null,
	request : null,
	ondata : null,  // def fce na praci s daty

	// nulovani
	init : function () {
		json.url = null;
		json.data = null;
		json.request = null;
		json.ondata = null;
	},

	// odeslani pozadavku
	open : function () {
		if (json.url) {
			if (window.XMLHttpRequest) {
				json.request = new XMLHttpRequest();
			}
			else if (window.ActiveXObject) {
				json.request = new ActiveXObject('Microsoft.XMLHTTP');
				if (!json.request) {
					json.request = new ActiveXObject('Msxml2.XMLHTTP');
				}
			}
			if (json.request) {
				json.request.open('GET', json.url, true);
				json.request.onreadystatechange = json.onstatechange;
				json.request.send(null);
			}
			else {
				alert('JSON: Chyba, XMLHttpRequest neni podporovan!');
			}
		}
	},

	// zmena stavu
	onstatechange : function () {
		if (json.request.readyState == 4) {
			if (json.request.status == 200) {
				if (json.ondata && json.request.responseText) {
					json.data = eval('('+ json.request.responseText +')');
					json.ondata();
				}
			}
			else {
				alert('JSON: Chyba '+ String(json.request.status) +' '+ json.request.statusText);
			}
		}
	}
};
