function isPPC(){
	if (navigator.appVersion.indexOf("PPC") != -1) return true;
	else return false;
}

function sendPage(mailHeadline){
	if(!isPPC())
	{
		window.location="mailto:\?subject\=" + mailHeadline + "&body=" + mailHeadline + ": " + window.location;
	}
	else
	{
		window.location="mailto:\?body=" + mailHeadline + ": " + window.location;
	}

	return false;
}

function validateCustomizedFields(formObject){
	var f = formObject;
	var searchTop = document.getElementById("searchTop");
	// var fields = f.childNodes;
	var fields = searchTop.childNodes;

	for (var i = 0; i < fields.length; i++)
	{
		if (fields[i].id != null && fields[i].id != "" && fields[i].id != "undefined" && fields[i].id == fields[i].value)
		{
			fields[i].value = '';
		}
		
		if (fields[i].value == 'Naziv proizvoda ...' || fields[i].value == 'Naziv+proizvoda+...')
		{
			fields[i].value = '';
		}
	}

	return true;
}

function validateUserLogin(loginError)
{
	var f = document.getElementById("formUserLogin");

	if (f.username.value == "" || f.password.value == "")
	{
		alert(loginError);

		return false;
	}

	userLogin(f.username.value, f.password.value, escape(f.goToUrl.value));

	return false;
}

function validate_shopping_cart_login(loginError){
	var f = document.getElementById("formUserLogin2");

	if (f.username.value == "" || f.password.value == "")
	{
		alert(loginError);

		return false;
	}

	shopping_cart_login();

	return false;
}

function validateFormPasswordRetrieve(loginError)
{
	var f = document.getElementById("formPasswordRetrieve");
	var e = f.email.value.toString();

	if (e == "")
	{
		alert(loginError);

		return false;
	}

	retrievePasswordSend(e);

	return false;
}

function showTab(tabId){
	var tab = document.getElementById(tabId);
	var tabButton = document.getElementById("tab_"+tabId);

	tab.style.display = "block";
	tabButton.className = "tab activeTab";

	switch (tabId){
		case "productsBox":
			if (document.getElementById("tab_productTest")){
				document.getElementById("productTest").style.display = "none";
				document.getElementById("tab_productTest").className = "tab";
			}
			if (document.getElementById("tab_productVideo")){
				document.getElementById("productVideo").style.display = "none";
				document.getElementById("tab_productVideo").className = "tab";
			}

			break;
		case "productTest":
			document.getElementById("productsBox").style.display = "none";
			document.getElementById("tab_productsBox").className = "tab";

			if (document.getElementById("tab_productVideo")){
				document.getElementById("productVideo").style.display = "none";
				document.getElementById("tab_productVideo").className = "tab";
			}

			break;
		case "productVideo":
			document.getElementById("productsBox").style.display = "none";
			document.getElementById("tab_productsBox").className = "tab";

			if (document.getElementById("tab_productTest") != null){
				document.getElementById("productTest").style.display = "none";
				document.getElementById("tab_productTest").className = "tab";
			}

			break;
	}

	return false;
}

function showExtendedDescription()
{
	document.getElementById("productExtendedDescription").style.display = (document.getElementById("productExtendedDescription").style.display == "block")? "none" : "block";

	return false;
}

function displaySimiliarProduct(productId1)
{
	if (productId1 != null && productId1 != "" && productId1 != "undefined")
	{
		var win = window.open("/php/products/comparePopup.php?productId1="+productId1, "compare_popup", "width=840,height=600,scrollbars=yes,resizable=yes");
		win.focus();
	}
}

function displayRelatedProduct(productUrl)
{
	if (productUrl != "")
	{
		window.open(productUrl, "_self");

		return false;
	}
}

function getPageSize()
{
	var xScroll, yScroll;
	
	if (window.innerHeight && window.scrollMaxY)
	{
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	}
	else if (document.body.scrollHeight > document.body.offsetHeight)
	{ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	}
	else
	{ // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}

	var windowWidth, windowHeight;

	if (self.innerHeight)
	{ // all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
	{ // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	}
	else if (document.body)
	{ // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	

	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight)
	{
		pageHeight = windowHeight;
	}
	else
	{
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth)
	{
		pageWidth = windowWidth;
	}
	else
	{
		pageWidth = xScroll;
	}

	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);

	return arrayPageSize;
}

function getPageScroll()
{
	var yScroll;

	if (self.pageYOffset)
	{
		yScroll = self.pageYOffset;
	}
	else if (document.documentElement && document.documentElement.scrollTop)
	{ // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
	}
	else if (document.body)
	{ // all other Explorers
		yScroll = document.body.scrollTop;
	}

	arrayPageScroll = new Array('',yScroll) 

	return arrayPageScroll;
}

function imagePopup(imageSrc, productId, popupType)
{
	if (imageSrc.indexOf("www.youtube.com") > -1){
		imageSrc = escape(imageSrc);
	}

	var arrayPageSize = getPageSize();
	var arrayPageScroll = getPageScroll();

	var objOverlay = document.getElementById("overlay");
	objOverlay.onclick = function() { hideLightbox(); return false; }
	objOverlay.style.display = 'block';
	objOverlay.style.position = 'absolute';
	objOverlay.style.top = '0';
	objOverlay.style.left = '0';
	objOverlay.style.zIndex = '90';
 	objOverlay.style.width = '100%';
 	objOverlay.style.height = arrayPageSize[1] + 'px';

	var objLightbox = document.getElementById("lightbox");
	objLightbox.style.position = 'absolute';
	objLightbox.style.zIndex = '100';

	// preload image
	imgPreload = new Image();
	imgPreload.onload = function()
	{
		// center lightbox and make sure that the top and left values are not negative
		// and the image placed outside the viewport

		var width = imgPreload.width;
		var height = imgPreload.height;

		if (width < 400)
		{
			width = 400;
		}

		if (height < 300)
		{
			height = 300;
		}
		
		switch (popupType)
		{
			case "galleryPopup":
				var lightboxTop = arrayPageScroll[1] + ((arrayPageSize[3] - 400 - height) / 2); // bilo 35
				var lightboxLeft = ((arrayPageSize[0] - 170 - width) / 2);
				break;
			case "advancedSearch":
				var lightboxTop = arrayPageScroll[1] + ((arrayPageSize[3] - 400 - height) / 2); // bilo 35
				var lightboxLeft = ((arrayPageSize[0] - 200 - width) / 2);
				break;
			case "imageLarge":
				var lightboxTop = arrayPageScroll[1] + ((arrayPageSize[3] - 400 - height) / 2); // bilo 35
				var lightboxLeft = ((arrayPageSize[0] - 50 - width) / 2);
				break;
			case "shoppingCart":
			case "shoppingCartHistory":
				var lightboxTop = arrayPageScroll[1] + ((arrayPageSize[3] - 300 - height) / 2); // bilo 35
				var lightboxLeft = ((arrayPageSize[0] - 230 - width) / 2);
				break;
		}

		objLightbox.style.top = (lightboxTop < 0) ? "0px" : lightboxTop + "px";
		objLightbox.style.left = (lightboxLeft < 0) ? "0px" : lightboxLeft + "px";

		// Hide select boxes as they will 'peek' through the image in IE
		selects = document.getElementsByTagName("select");

		for (i = 0; i != selects.length; i++)
		{
			selects[i].style.visibility = "hidden";
        }

		objLightbox.style.display = 'block';

		// After image is loaded, update the overlay height as the new image might have
		// increased the overall page height.
		arrayPageSize = getPageSize();
		objOverlay.style.height = (arrayPageSize[1] + 'px');

		switch (popupType)
		{
			case "galleryPopup":
				// ***** ajax gallery popup ***** //
				galleryPopup(productId, imageSrc);
				// ***** /ajax gallery popup ***** //

				break;
			case "advancedSearch":
				// ***** ajax advanced search popup ***** //
				advancedSearchPopup();
				// ***** /ajax advanced search popup ***** //

				break;
			case "imageLarge":
				// ***** ajax advanced search popup ***** //
				imageLarge(imageSrc, productId);
				// ***** /ajax advanced search popup ***** //

				break;
			case "shoppingCart":
				// ***** ajax shopping cart popup ***** //
				if (productId.indexOf("|") > -1)
				{
					var temp = productId.split("|");
					shoppingCartPopup(temp[0], temp[1], temp[2]);
				}
				else
				{
					shoppingCartPopup(productId);
				}
				// ***** /ajax shopping cart popup ***** //

				break;
			case "shoppingCartHistory":
				shoppingCartHistory();
				break;
		}

		window.setTimeout("imgPreload.src = null", 100);

		return false;
	}

	if (imageSrc.indexOf("www.youtube.com") > -1)
	{
		imgPreload.src = "/images/basic/blank_.gif";
	}
	else
	{
		imageSrc = (imageSrc == "")? "/images/basic/blank_.gif" : imageSrc;
		imgPreload.src = imageSrc;
	}

	return false;
}

function hideLightbox()
{
	// get objects
	objOverlay = document.getElementById('overlay');
	objLightbox = document.getElementById('lightbox');

	// hide lightbox and overlay
	objOverlay.style.display = 'none';
	objLightbox.style.display = 'none';

	// make select boxes visible
	selects = document.getElementsByTagName("select");

	for (i = 0; i != selects.length; i++)
	{
		selects[i].style.visibility = "visible";
	}

	// disable keypress listener
	document.onkeypress = '';

	window.clearTimeout();
}

function loadLargeImage(largeImage)
{
	if (largeImage != null && largeImage != "" && largeImage != "undefined")
	{
		document.getElementById("lightboxImage").src = largeImage;
	}

	return false;
}

function showPravnoLice(tip)
{
	switch (tip)
	{
		case "F":
			document.getElementById("registrationPravnoLice").style.display = "none";

			break;
		case "P":
			document.getElementById("registrationPravnoLice").style.display = "block";

			break;
	}

	return false;
}

function validateRegistrationForm(f, jsalert, jsalert2, jsalert3, jsalert4, jsalert5, jsalert6, shoppingCart)
{
	var tip = f.tip_lica.value;
	var email = f.email.value.toString();

	switch (tip)
	{
		case "F":
			if (f.ime.value == "" || f.prezime.value == "" || f.username.value == "" || f.password.value == "" || f.password2.value == "" || email == "" || f.telefon.value == "" || f.adresa.value == "" || f.ptt_broj.value == ""  || f.grad.value == ""  || f.drzava.value == "")
			{
				alert(jsalert);
				return false;
			}

			break;
		case "P":
			if (f.ime.value == "" || f.prezime.value == "" || f.username.value == "" || f.password.value == "" || email == "" || 
			f.firma_naziv.value == "" || f.firma_pib.value == "" || f.firma_racun.value == "" || f.firma_mb.value == "" || f.firma_telefon.value == "" || f.firma_adresa.value == "" || f.firma_ptt_broj.value == "" || f.firma_grad.value == "" || f.firma_drzava.value == "")
			{
				alert(jsalert);
				return false;
			}

			break;
	}

	if (f.jmbg.value == "")
	{
		alert(jsalert4);
		return false;
	}
	else
	{
		if (f.jmbg.value != "" && (f.jmbg.value.length != 13 || isNaN(f.jmbg.value)))
		{
			alert(jsalert3);
			return false;
		}
	}

	if (f.password.value.length < 5)
	{
		alert(jsalert5);
		return false;
	}
	
	if (f.password.value != f.password2.value)
	{
		alert(jsalert2);
		return false;
	}

	if (f.sms_obavestenje.checked && f.mobilni.value == '')
	{
		alert(jsalert6);
		return false;
	}

	f.username.disabled = false;

	var reloadHome = (document.getElementById("akcija").value == 'register')? 'reload' : '';
	if (shoppingCart) { return ajax_registration_submit(reloadHome); }
	
	return true;
}

function categoriesBreadcrumbs(categoriesString){
	$("blinks").innerHTML += unescape(categoriesString);
	return false;
}

function displayAllCategories(ulId){
	if (document.getElementById("categoryId"+ulId)){
		var ul = document.getElementById("categoryId"+ulId);
		var expansionMark = document.getElementById("expansionMark"+ulId);
		displaySubcategories(ul.childNodes);
		expansionMark.innerHTML = (expansionMark.innerHTML == "(+)")? "(-)" : "(+)";
	}
	return false;
}

function displaySubcategories(lis){
	if (lis.length > 0){
		for (var l = 0; l < lis.length; l++){
			var li = lis[l];
			
			if (li.nodeType != 1) continue;

			var className = li.className;

			if (className == "hidden"){
				li.className = "shown";
			}

			if (className == "shown"){
				li.className = "hidden";
			}

			if (li.getElementsByTagName("ul").length > 0){
				var ulList = li.getElementsByTagName("ul");
				for (var i=0; i<ulList.length; i++){
					var newLis = ulList.item(i).childNodes;
					displaySubcategories(newLis);
				}
			}
		}
	}
}

function addToMyFavorites()
{
	if (document.getElementById("formAddToMyFavorites"))
	{
		document.getElementById("formAddToMyFavorites").submit();
	}

	return false;
}


function disableEnterKey(e){
	var key;

	if(window.event) key = window.event.keyCode;     //IE
	else key = e.which;     //firefox

	return (key != 13);
}


var star_on = new Image();
star_on.src = "/images/basic/star_on_.gif";

var star_off = new Image();
star_off.src = "/images/basic/star_off_.gif";

function mark(mark){
	for (var i=1;i<mark+1;i++)
		document.getElementById('mark_img'+i).src=star_on.src;
	for (var i=mark+1;i<6;i++) 
		document.getElementById('mark_img'+i).src=star_off.src;
	//document.getElementById('mark').value=mark;
}

document.getElementsByClassName = function(cl) {
	var retnode = [];
	var elem = this.getElementsByTagName('*');
	for (var i = 0; i < elem.length; i++){
		var classes = elem[i].className;
		if (classes == cl) retnode.push(elem[i]);
	}
	return retnode;
}; 

function changed_payment(value, uplatnica_link, nalog_link){
	if (value == "2"){
		$("documents").innerHTML=uplatnica_link;
		$("documents").style.display="block";
	} else if (value == "3"){
		$("documents").innerHTML=nalog_link;
		$("documents").style.display="block";
	} else {
		$("documents").style.display="none";
		$("documents").innerHTML="";
	}
}

function onPaymentTypeSelect(troskovi_isporuke, euro, tip_placanja, kes_dodatak, gratis_labela, user_mobile) 
{
	var p_type = $('payment_type').value;
	if (p_type === "5") {
		$('unos_platimo_broja').setStyle({
			display:'table-row'
		});
	} else {
		$('unos_platimo_broja').setStyle({
			display:'none'
		});
	}
	update_troskovi_isporuke(troskovi_isporuke, euro, tip_placanja, kes_dodatak, gratis_labela);
}

function update_troskovi_isporuke(troskovi_isporuke, euro, tip_placanja, kes_dodatak, gratis_labela)
{
	var troskovi_isporuke = parseFloat(troskovi_isporuke);
	var euro = parseFloat(euro);
	var tip_placanja = parseInt(tip_placanja);
	var text = "";
	//var kurs = parseFloat(kes_dodatak / euro);

	// alert("troskovi_isporuke - " + troskovi_isporuke + "; kes_dodatak - " + kes_dodatak + "; euro - " + euro); return false;

	if (troskovi_isporuke == 0)
	{
		text = gratis_labela;
	}
	else if (tip_placanja != 0)
	{
		// if (tip_placanja == 1) { troskovi_isporuke += 1.2; }
		// if (tip_placanja == 1) { troskovi_isporuke += kes_dodatak; }
		// if (tip_placanja == 1) { troskovi_isporuke += kurs; }
		if (tip_placanja == 1)
		{
			troskovi_isporuke = troskovi_isporuke * euro + kes_dodatak;
			text = "O&#269;ekivani tro&#154;kovi isporuke: " + format_float(troskovi_isporuke) + " dinara.";
		}
		else
		{
			text = "O&#269;ekivani tro&#154;kovi isporuke: " + format_float(troskovi_isporuke * euro) + " dinara.";
		}
	}

	$("troskovi_isporuke_td").innerHTML = text;
}

function format_float(number){
	//alert(number);

	var str_number = number.toFixed(2);
	var decimal = str_number.substr(str_number.indexOf(".") + 1);
	
	//alert(str_number+" "+decimal);

	var integer = Math.floor(str_number);
	if (integer > 0){
		str_number = "";
		while (integer > 1000){
			var rest = "" + integer %1000;
			while (rest.length < 3)
				rest = "0" + rest;
			str_number = "." + rest + str_number;
			integer = Math.floor(integer / 1000);
			
		}
		if (integer > 0)
			str_number = integer + str_number;
	} else {
		str_number = "0";
	}

	return str_number + "," + decimal;
}

function clearForm(form){
	for (var i=0; i<form.elements.length; i++){
		if ( form.elements[i].type == "text" 
				|| form.elements[i].type == "password" 
				|| form.elements[i].type == "textarea"){
			if (form.elements[i].name == "productTitle"){
				form.elements[i].value = "Naziv proizvoda ...";
			} else 	{
				form.elements[i].value = "";
			}
		} else if (form.elements[i].type == "select-one"){
			form.elements[i].selectedIndex = 0;
		}
	}
}

function printConfigurator()
{
	var components = "";
	var amounts = "";
	
	for (var k = 0; k < 26; k++)
	{
		if (document.getElementById("komponenta_"+k))
		{
			var komponenta = document.getElementById("komponenta_"+k);
			components += komponenta.value + "|";
		}

		if (document.getElementById("kol_"+k))
		{
			var kolicina = document.getElementById("kol_"+k);
			amounts += kolicina.value + "|";
		}
	}

	if (components.length > 0)
	{
		components = components.substring(0, components.length - 1);	
	}

	if (amounts.length > 0)
	{
		amounts = amounts.substring(0, amounts.length - 1);
	}

	window.open("/php/configurator/templatePrint.php?components="+components+"&amounts="+amounts, "_blank", "width=640, height=480, scrollbars=yes, toolbars=yes, menubar=yes");

	return false;
}
