function check_and_rate(id,count,flush,alert_text){if(check_quantity()){hlasovat(id,count,flush);}else{msgBox(alert_text);}}
function check_and_buy_configuration(id,count,flush,alert_text,no_product_msg){
	if(check_quantity()){koupit(id,count,flush,0,1,no_product_msg);}else{msgBox(alert_text);}
}
function check_and_buy_list(id, category_from, is_configuration, count,flush,alert_text){
	if(check_quantity_list(id)){
		hlasovat(id,count,flush,category_from,is_configuration);
	}else{
		msgBox(alert_text);
	}
}
function hlasovat(id,count,flush,category_from,is_configuration)
{ //no_product_msg	
	if(is_configuration == 1){var inConfiguration = getProductsInConfiguration(id);}
	else{var inConfiguration = 'na';}
	var printingTextFields = document.getElementsByName('printing_text[]');
	var itemNoteField  = document.getElementById('item_note');
	var printingText = '';
	if(document.getElementById('printing_icon') != null || document.getElementById('printing_icon') != undefined)
	{
		var printingIcon = document.getElementById('printing_icon').value;
	}
	else
	{
		var printingIcon = '';
	}
	if(document.getElementById('custom_image') != null || document.getElementById('custom_image') != undefined)
	{
		var printingOwnImage = document.getElementById('custom_image').value;
	}
	else
	{
		var printingOwnImage = '';
	}
	
	var itemNote = '';
	if(printingTextFields != null && printingTextFields != undefined)
	{
		for(i = 0; i < printingTextFields.length; i++)
		{
			if(printingTextFields[i].value != '')
			{
				printingText += (printingTextFields[i].value + '|');
			}
		}
	}
	
	if(itemNoteField != null && itemNoteField != undefined)
	{
		itemNote = itemNoteField.value;
	}
	
	printingText = printingText.slice(0, eval(printingText.length - 1));
	
	if (count) {count = count.value;}	if (!count) count = 1; if (!flush) flush = 0;
	if (!category_from) category_from = 0;
		
	if(printingText != '')
	{
		var textStr = '&printing_text=' + printingText;
	}
	else
	{
		var textStr = '';
	}
	
	if(printingIcon != '')
	{
		var iconStr = '&printing_icon=' + printingIcon;
	}
	else
	{
		var iconStr = '';
	}
		
	if(printingOwnImage != '')
	{
		var ownImageStr = '&printing_own_image=' + printingOwnImage;
	}
	else
	{
		var ownImageStr = '';
	}


	var dataFile = url + "inc/ajax/abasket.php?id=" + id + "&count=" + count + "&flush=" + flush + "&preurl=" + url + "&category_from=" + category_from + "&is_configuration=" + is_configuration + "&in_configuration=" + inConfiguration + '&item_note=' + itemNote + textStr + iconStr + ownImageStr;
	//alert(dataFile);
	if(lock==false){
	lock = true;
	getData(dataFile, "basket");
	pause(250);
	if (show_window_after_buy == 0 && flush != 1) {msgBox(window_after_buy_text);}
	if (flush == 1) {msgBox('Titul byl odebrán z výběru');}
	var loc = document.location.href;
	lock=false;
	if (loc.match("basket") != null && flush == 1) 
		t = setTimeout('basket_redirect()',500);
  }	
}

var lock = false;

function pause(numberMillis)
{
var now = new Date();
var exitTime = now.getTime() + numberMillis;
while (true)
{
now = new Date();
if (now.getTime() > exitTime)
return;
}
}

function basket_redirect()
{
	document.location.href = url + "?loc=basket";
}

function getWindowScrollOffset() {return (document.documentElement.scrollTop || document.body.scrollTop) + 'px';}	
function getWindowSize(){ 
	var size = {
		width: window.innerWidth || (window.document.documentElement.clientWidth || window.document.body.clientWidth),
		height: window.innerHeight || (window.document.documentElement.clientHeight || window.document.body.clientHeight)
	};
	return size;
}	
function varianta(menu,row){
	var product = menu.options[menu.selectedIndex].value;
	var dataSource = url + "inc/ajax/avariants.php?id=" + product;
	if(XMLHttpRequestObject) {
    XMLHttpRequestObject.open("GET", dataSource, true);
    XMLHttpRequestObject.onreadystatechange = function()
    {
      if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
	  	  var obsah = XMLHttpRequestObject.responseText;
	  	  var items = obsah.split("|");
	  	  $('#product_link'+row).html(items[0]);
		  $('#product_price'+row).html(items[1]);
		  $('#product_buy'+row).html(items[2]);
		  $('#product_kusu'+row).html(items[3]);		  
      }
    }
    XMLHttpRequestObject.send(null);
  }
}
function check_quantity(){
//	var quantityField = document.getElementById('pocet_kusu');
//	var minQuantity = document.getElementById('min_quantity').value;
//	var quantity = document.getElementById('pocet_kusu').value;
	//alert(minQuantity); alert(quantity);
//	if(eval(minQuantity) <= eval(quantity)){return true;}else{quantityField.value = minQuantity;return false;}
return true;
}

function check_quantity_list(id_product)
{
	var quantityField = document.getElementById('pocet_kusu_' + id_product);
	var minQuantity = document.getElementById('min_quantity_' + id_product).value;
	var quantity = quantityField.value;
	//alert(minQuantity); alert(quantity);
	if(eval(minQuantity) <= eval(quantity)){return true;}else{quantityField.value = minQuantity;return false;}
}

function getProductsInConfiguration(id_product){
	var idIncluded = document.getElementsByName('id_product_included');
	var inCategoryIncluded = document.getElementsByName('in_category_included');
	var isIncluded = document.getElementsByName('is_included');
	var isRequired = document.getElementsByName('is_required');
	var inConfigurationArr = new Array();
	var inConfiguration = '';	
	if(!(idIncluded == null || idIncluded == undefined) && idIncluded.length > 0)
	{
		for(i = 0; i < idIncluded.length; i++)
		{
			if(isIncluded[i].type == 'hidden' || (isIncluded[i].type == 'checkbox' && isIncluded[i].checked == true))
			{
				inConfigurationArr[i] = idIncluded[i].value + '-' + inCategoryIncluded[i].value + '-' + isRequired[i].value;
			} 
		}
		inConfiguration = inConfigurationArr.join('|');
		return inConfiguration;
	}else{
		var idProductsIncluded = document.getElementById('id_products_included_' + id_product).value;
		if(idProductsIncluded != null)
		{
			return idProductsIncluded;
		}
		else
		{
			return 'na';
		}
	}
}
