/**
 * function unit_price()
 *
 * change prices in article details according to selected article unit. also change name of ujit in cart-adding
 * form and value of unit_id element. then get optional discount for selected unit and display it
 */
function unit_price(){
	var prices_array = document.getElementById("jednotka").value.split("#");

	if(document.getElementById("jednotka_nazev")) document.getElementById("jednotka_nazev").innerHTML = prices_array[0];
	if(document.getElementById("jednotka_id")) document.getElementById("jednotka_id").value = prices_array[1];
	if(document.getElementById("cena")) document.getElementById("cena").innerHTML = prices_array[2]+" Kč";
	if(document.getElementById("dph")) document.getElementById("dph").innerHTML = prices_array[3]+" Kč";
	if(document.getElementById("cena_dph")) document.getElementById("cena_dph").innerHTML = prices_array[4]+" Kč";
	if(document.getElementById("celkem_cena_dph")) document.getElementById("celkem_cena_dph").innerHTML = prices_array[5]+" Kč (včetně DPH)";

	if(prices_array[6]){
		document.getElementById("sleva_text").innerHTML = prices_array[6]+"<br /><span>(tato sleva není do výše uvedené ceny započítána)</span>";
		document.getElementById("sleva_text").style.display = "block";
	}else{
		document.getElementById("sleva_text").style.display = "none";
	}
}


/**
 * function katalog_add_to_cart()
 *
 * add article into shopping cart directly from catalogue
 *
 * @param int zbozi_id "article Id"
 * @param int jednotka_id "article unit Id"
 */
function katalog_add_to_cart(zbozi_id,jednotka_id){
	document.getElementById("zbozi_id").value = zbozi_id;
	document.getElementById("jednotka_id").value = jednotka_id;
	document.getElementById("katalog_form").submit();
}


/**
 * function kosik_edit()
 *
 * update ammount and unit of article in cart by adjusting some form variables and submitting the form
 *
 * @param int kosik_id "article Id"
 */
function kosik_edit(kosik_id){
	document.getElementById("kosik_id").value = kosik_id;
	document.getElementById("pocet_jednotek").value = document.getElementById("pocet_jednotek_"+kosik_id).value;
	document.getElementById("jednotka_id").value = document.getElementById("jednotka_id_"+kosik_id).value;
	document.getElementById("akce").value = "upravit";
	document.getElementById("form_akce").submit();
}


/**
 * function kosik_remove()
 *
 * remove one item from shopping cart by adjusting some form variables and submitting the form
 *
 * @param string zbozi_nazev "article name"
 * @param int kosik_id "article Id"
 */
function kosik_remove(zbozi_nazev,kosik_id){
	if(confirm("Odebrat zboží \""+zbozi_nazev+"\" z košíku?")==true){
		document.getElementById("kosik_id").value = kosik_id;
		document.getElementById("akce").value = "smazat";
		document.getElementById("form_akce").submit();
	}
}


/**
 * function kosik_truncate()
 *
 * truncate shopping cart completely
 */
function kosik_truncate(kosik_id){
	if(confirm("Odebrat všechno zboží z košíku?")==true){
		document.getElementById("akce").value = "vyprazdnit";
		document.getElementById("form_akce").submit();
	}
}


/**
 * function createRequest()
 *
 * create new XMLHttpRequest
 *
 * @param string url "requested file url"
 */
function createRequest(url){
	if(window.XMLHttpRequest){
		httpRequest = new XMLHttpRequest();
	}
	if(window.ActiveXObject){
		httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}

	httpRequest.open("GET",url,true);
	httpRequest.onreadystatechange = function () {processRequest();};
	httpRequest.send(null);
}


/**
 * function processRequest()
 *
 * process XMLHttpRequest, write plain text data into file label
 *
 * no params needed, inner function of createRequest
 */
function processRequest(){
	if(httpRequest.readyState==4){
		if(httpRequest.status==200){
			var data_string = httpRequest.responseText;
			var data_array = data_string.split("#");
			document.getElementById("cena_doprava").innerHTML = data_array[0];
			document.getElementById("cena_platba").innerHTML = data_array[1];
			document.getElementById("cena").innerHTML = data_array[2];
			document.getElementById("dph").innerHTML = data_array[3];
			document.getElementById("cena_dph").innerHTML = data_array[4];
			document.getElementById("hidden_cena").value = data_array[2];
			document.getElementById("hidden_dph").value = data_array[3];
			document.getElementById("hidden_cena_dph").value = data_array[4];
		}else{
			alert("Při načítání informací se vyskytla chyba.\n\nStiskněte F5 pro znovunačtení stránky a poté\nznovu vyberte způsob dopravy zboží a způsob\nplatby objednávky.");
		}
	}
}


/**
 * function get_prices()
 *
 * get payment and transport values and call XMLHttpRequest
 *
 * @param int Id "file Id"
 */
function get_prices(cena,dph,cena_dph){
	var doprava = document.getElementById("doprava").value;
	var platba = document.getElementById("platba").value;
	createRequest("inc/get_prices.inc.php?doprava="+doprava+"&platba="+platba+"&cena="+cena+"&dph="+dph+"&cena_dph="+cena_dph);
}


/**
 * function cart_options_selected()
 *
 * check if transport and payment type is selected. if not, display error and return false
 *
 * no params needed :-)
 */
function cart_options_selected(){
	if(document.getElementById("doprava").value==0){
		alert("Vyberte typ dopravy zboží.");
		return false;
	}else if(document.getElementById("platba").value==0){
		alert("Vyberte typ platby za zboží.");
		return false;
	}else{
		return true;
	}
}


function banner() {
	var width = 0;
	var height = 0;
	var loc = document.location;

	/**
	 * continue only if referrer contains one of following values
	 */
	if (loc == "http://www.kavycaje.cz/") {

		/**
		 * get window height
		 */
		if (typeof(window.innerWidth) == "number" ) {
			width = window.innerWidth;
			height = window.innerHeight;
		} else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
			width = document.documentElement.clientWidth;
			height = document.documentElement.clientHeight;
		} else if (document.body && (document.body.clientWidth || document.body.clientHeight)) {
			width = document.body.clientWidth;
			height = document.body.clientHeight;
		}

		/**
		 * create overlay above visible page area
		 */
		var overlay = document.createElement("div");
		overlay.style.position = "fixed";
		overlay.style.width = width + "px";
		overlay.style.height = height + "px";
		overlay.style.top = "0";
		overlay.style.left = "0";
		overlay.style.backgroundColor = "#170c00";
		overlay.style.opacity = "0.8";
		overlay.style.filter = "alpha(opacity=80)";
		overlay.style.cursor = "pointer";
		document.body.appendChild(overlay);

		/**
		 * append banner image
		 */
		var top = (height - 500) / 2;
		var left = (width - 250) / 2;
		var banner = document.createElement("img");
		banner.src = "images/shop_end.jpg";
		banner.style.position = "fixed";
		banner.style.top = top + "px";
		banner.style.left = ((left >= 0) ? left : 0) + "px";
		banner.style.zIndex = "500";
		banner.style.cursor = "pointer";
		document.body.appendChild(banner);

		/**
		 * assign banner and overlay click action
		 */
		banner.onclick = function() {
			document.body.removeChild(banner);
			document.body.removeChild(overlay);
			document.body.removeChild(close);
		}

		overlay.onclick = function() {
			document.body.removeChild(banner);
			document.body.removeChild(overlay);
			document.body.removeChild(close);
		}
	} //... referrer check end
}

