function reduceExpand(str,categoryId)
{
	str = str.replace(/^\s+|\s+$/g,'');
	str = str.replace(/\s+/g,'\\s+');
	var pattern = new RegExp(str, 'i');
	var used = false;
	var r;
	$('#products_' + categoryId + '_items li').each(function() {
		r = pattern.test($(this).text());
		if (r && !used) {
			$(this).addClass('selected');
			used = true;
		}
		else {
			$(this).removeClass('selected');
		}
		$(this).css('display', r ? 'block' : 'none');
	});
}
function constructorToCart() {
	if (f_scrollTop() > 81) {
		$("#buybasket #headerPart").css("background-color","#F9A64A");
	}
    $.ajax({
        type: "POST",
        url: "/si/ajax/default.html",
        data: "act=constructor_to_cart",
        dataType: "html",
        async: false,
        success: function(data){
			truncateConstructor();
            if($(".cart_button").size() == 0) {
    			$("#cart1").attr("class", "cart_button");
    		}
			var fscrol = f_scrollTop();
			var visual = $("#buybasket").css("top");
			$("#buybasket").slideUp("fast");
			$("#shopingItems #shoppingContent").html(data);
			if (fscrol > 81) {
				$("#buybasket").css("top", fscrol+"px");
			}
			$("#buybasket").slideDown("slow");
			$.post(
				"/si/ajax/default.html",
				{getNumCartItems: 1},
				function(data) {$("#_basket_item_count_ b").html(data);}
			);
        }
    });
}
$.fn.equalHeights = function(px) {
	$(this).each(function() {
		
		var currentTallest = 0;
		$(this).children().each(function(i){
			if ($(this).height() > currentTallest) { currentTallest = $(this).height(); }
		});
		if (!px || !Number.prototype.pxToEm) currentTallest = currentTallest.pxToEm(); //use ems unless px is specified
		// for ie6, set height since min-height isn't supported
		if ($.browser.msie && $.browser.version == 6.0) { $(this).children().css({'height': currentTallest}); }
		$(this).children().css({'min-height': currentTallest}); 
	});
	return this;
};
function showcontenttip(cItemId){$('#viewForm').slideDown('slow');}

$(document).ready(
	function() {
		$("input[name='legal_person_register']").click(
        function(){
            if($("input[name='legal_person_register']:checked").val() > 0){
                $("#onlyCompany").show();
				$("#reg1, #reg2").hide();
            } 
            else {
                 $("#onlyCompany").hide();
				 $("#reg1, #reg2").show();
            }
        });		
		$(function() {
			setTimeout(function() {
				$('#ads').cycle({
					pager:'#nav',
					after:onAfter,
					timeout:6000,
					speed:500
				});
			});
		}); 
	}
);
/**
Registrira StarRating fukcionalnost.
*/
(function($) {
	$.fn.starRating = function(argv) {
		// box je obvezen parameter.
		if (argv != null && argv["box"] != null) {
			var defaults = {
				// slika zvezdic za prikaz ko s kursorjem zaplavamo nad box-em
				hoverImg:		"stars_selected.gif",
				// slika za prikaz neizbranih zvezdic
				inactiveImg:	"stars_inactive.gif",
				// slika za prikaz izbranih zvezdic
				selectedImg:	"stars_hover.gif",
				// omogoči AJAX POST callback
				allowAjax:		true,
				// omogoči box mouseout event
				allowOut:		true,
				// omogoči box mousein event
				allowIn:		true,
				// omogoči box mousemove 
				allowMove:		true,
				// število pixlov na levi
				//leftMargin:		0,
				// število pixlov na desni
				//rightMargin:	20,
				// število pixlov med "zvezdicami", ki se ignorirajo
				middleMargin:	1,
				// procent najmanjše enote
				percent:		1
			}
			var argv = $.extend(defaults,argv);
			if (argv["box"] != null) {
				var box = argv["box"];
				var boxWidth = parseInt($("#" + box).css("width"));
				//boxWidth += argv["leftMargin"] + argv["rightMargin"];
				if (argv["allowMove"] == true) {
					$("#" + box).mousemove(function (e) {
						var p = (e.clientX - $("#" + box).offset().left) + 1;
						// d predstavlja delež kontrole, ki se posveti "premikanju" star ratinga
						//var d = parseInt($("#" + box).css("width"))/100;
						var d = argv["percent"] * boxWidth / 100;
						// kongruenca margina ?
						var m = argv["middleMargin"] / boxWidth * 100;
						if (p%d < 1 && p%m < 1) {
							$("#" + box + " .overlay").css("width",p);
						}
					});
				}
				if (argv["allowIn"] == true) {
					$("#" + box).mouseover(function () {
						$("#" + box + " .overlay").css("background-image","url(/static/images/" + argv["selectedImg"] + ")");
					});
				}
				if (argv["allowOut"] == true) {
					$("#" + box).mouseout(function (){
						$("#" + box + " .overlay").css("background-image","url(/static/images/" + argv["hoverImg"] + ")");
					});
				}
				if (argv["allowAjax"] == true) {
					$("#" + box).click(function(e) {
						
						var p = (e.clientX - $("#" + box).offset().left);
						var r = p / boxWidth;
						$.post(
							"/si/ajax/default.html",
							{
								ocena: r,
								product_id: $("#" + box).attr("rel")
							},
							function(q) {
								// q je xml objekt, zato ne testirat za q != "" !
								if (q != null) {
									$("#avg_review").html($(q).find("reviewResponse").attr("avg"));
									$("#sum_review").html($(q).find("reviewResponse").attr("sum"));
									$("#_rating_title").html($(q).find("reviewResponse").attr("title"));
									$("#" + box).unbind();
								}
							}
						);
					});
				}
			}
		}
	};
})(jQuery);
var last;
/**
Nalaganje produktov na strani za nastavljanje primerjave.
* @params int p Ordinal željene strani
*/
function comparison_refresh_available(p)
{
	if (p == null) {
		p=1;
		if ($('#comparison_filter').val().length == 0 || $('#comparison_filter').val() == last)
			return;
		last = $('#comparison_filter').val();
	}
	if (p > 0) {
		$("#primerjava #loadingOverlay").css("display","block");
		$('#comparison_filter').attr('readonly','readonly');
		$.getJSON(
			'/si/ajax/default.html',
			{cmp_page: p,comparison_getProducts: 1,filter: $('#comparison_filter').val()},
			function (r) {
				$("#primerjava #loadingOverlay").css("display","none");
				$("#paginationResults").html(r.paging);
				$("#productsContent").html(r.items);
				$("#productsContent").fadeIn('fast');
				$('#comparison_filter').attr('readonly','');
			}
		);
	}
}
function submitForm(name){$("[name=" + name + "]").submit();}
function addToComparison(id){$("[name=cmp_add]").val(id);submitForm("productsForm");}
function onAfter() {$('#text_ads').html(this.title);}
/* BASKET */
function ShoppingBasket(itemId) {
	if (f_scrollTop() > 81) {$("#buybasket #headerPart").css("background-color","#F9A64A");}
     $.post("/si/ajax/default.html",{product: itemId,shopping: 1},
		function(data){
			var fscroll = f_scrollTop();
			if($(".cart_button").size() == 0) {$("#cart1").attr("class", "cart_button");}
			var visual = $("#buybasket").css("top");
			$("#buybasket").slideUp("fast");
			$("#shopingItems #shoppingContent").html(data);
			if (fscroll > 81) {$("#buybasket").css("top", fscroll+"px");}
			$("#buybasket").slideDown("slow");
			$.post("/si/ajax/",{getNumCartItems: 1},
				function(data) {$("#_basket_item_count_ b").html(data);}
			);
		}
	);
}

function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}
$(window).scroll(function () { 
    if ($("#buybasket").css("display") != "none") {
		var buy = $("#buybasket").css("top");
		var arrBuy = buy.split("p");
		var fscrol = f_scrollTop();
		if(fscrol < parseInt(arrBuy) &&  parseInt(arrBuy) != 81) {
			if(fscrol > 81){$("#buybasket").css("top", fscrol+"px");} 
			else {
			$("#buybasket").css("top", "81px");
			$("#buybasket #headerPart").css("background-color","");
			}
		}
		else {$("#buybasket #headerPart").css("background-color","");}
    }
});
function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}
