function send_xmlhttprequest(state_change, method, url, content, headers) {
	/** odeslání XMLHttp požadavku
	* @param function state_change funkce zajištující obsluhu pri zmene stavu požadavku, dostane parametr s XMLHttp objektem
	* @param string method GET|POST|...
	* @param string url URL požadavku
	* @param string [content] telo zprávy
	* @param array [headers] pole predaných hlavicek ve tvaru { 'hlavicka': 'obsah' }
	* @return bool true v prípade úspechu, false jinak
	* @copyright Jakub Vrána, http://php.vrana.cz
	*/
	
	var xmlhttp = (window.XMLHttpRequest ? new XMLHttpRequest : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
    if (!xmlhttp) {
        return false;
    }
    xmlhttp.open(method, url);
    xmlhttp.onreadystatechange = function () {
        state_change(xmlhttp);
    };
    if (headers) {
        for (var key in headers) {
            xmlhttp.setRequestHeader(key, headers[key]);
        }
    }
    xmlhttp.send(content);
    return true;
}

function product_detail(id)
{
	if (!send_xmlhttprequest(product_detail_process, 'GET', '/product_detail.php?id_product=' + id)) {
        return false;
    }
	else return true;
}

function product_detail_process(http_request)
{
	if (http_request.readyState == 4) {
    	if (http_request.status == 200) {
			// var mistoZobrazeni = document.getElementById("enquiry");
			createPopup(http_request.responseText);
		}
		else alert("Error when reading page "+ http_request.status +":"+ http_request.statusText);
	}
}

function exchange()
{
	var currency_from = document.calc.currency_from.value;
	var currency_amount = parseInt(document.calc.currency_amount.value);
	var post = 'currency_from=' + currency_from + '&currency_amount=' + currency_amount;

	if (!send_xmlhttprequest(exchange_process, 'POST', '/inc/exchange.php', post ,{ 'Content-Type': 'application/x-www-form-urlencoded' })) {
        return false;
    }
	else return true;
}

function exchange_process(http_request)
{
	if (http_request.readyState == 4) {
    	if (http_request.status == 200) {
			var mistoZobrazeni = document.getElementById("exchange");
			mistoZobrazeni.innerHTML = http_request.responseText;
		}
		else alert("Error when reading page "+ http_request.status +":"+ http_request.statusText);
	}
}

function calendar(date)
{
	if (!send_xmlhttprequest(calendar_process, 'GET', '/inc/calendar.php?date=' + date)) {
        return false;
    }
	else return true;
}

function calendar_process(http_request)
{
	if (http_request.readyState == 4) {
    	if (http_request.status == 200) {
			var mistoZobrazeni = document.getElementById("calendar");
			mistoZobrazeni.innerHTML = http_request.responseText;
		}
		else alert("Error when reading page "+ http_request.status +":"+ http_request.statusText);
	}
}

function enquiry(vote)
{
	if (!send_xmlhttprequest(enquiry_process, 'GET', '/inc/enquiry.php?vote=' + vote)) {
        return false;
    }
	else return true;
/*		
		httpRequest.open('POST', 'enquiry.php', true);
		httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		httpRequest.send('promnena=pokus');
*/		
}

/* predelat na univerzalni */
function enquiry_process(http_request)
{
	if (http_request.readyState == 4) {
    	if (http_request.status == 200) {
			var mistoZobrazeni = document.getElementById("enquiry");
			mistoZobrazeni.innerHTML = http_request.responseText;
		}
		else alert("Error when reading page "+ http_request.status +":"+ http_request.statusText);
	}
}

function checkup(id, e)
{
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3) { // defeat Safari bug
		targ = targ.parentNode;
	}
	// zabranime zaskrtnuti checkboxu, pokud bylo kliknuto do odkazu nebo inputu
	if (targ.nodeName == 'A' || targ.nodeName == 'INPUT') return false;
	
	var ch = document.getElementById(id);
	if (ch.checked == true) ch.checked = false;
	else ch.checked = true;
}

function open_menu(id)
{
	var ikona = document.getElementById("a"+id);
	var podmenu = document.getElementById("b"+id).style;
	if (ikona != null)
	{	if (podmenu.display == "block")
		{	ikona.className = "ico";
			podmenu.display = "none";
		}
		else
		{	ikona.className = "icoAct";
			podmenu.display = "block";
		}
	}
}