$(document).ready(function(){

	for (i=0; i<document.links.length;) {
		document.links[i].onfocus=document.links[i++].blur;
	}

	$.post($("base").attr("href")+'tools/komunikat.html', {
	}, function(data){
		if(data){
			komunikat( data.header, data.txt , data.url, data.another_type, data.anuluj );
		}
	}, "json");

    $(function() {
    	$('#galeria a').lightBox({
    		txtImage: 'Zdjęcie',
    		txtOf: 'z',
    		keyToClose: 'Esc',
    		fixedNavigation: true
    	});
    });

    $(function() {
    	$('.thumbs a').lightBox({
    		txtImage: 'Zdjęcie',
    		txtOf: 'z',
    		keyToClose: 'Esc',
    		fixedNavigation: true
    	});
    });

    $(document).keypress(function (e) {
    	if( e.keyCode == 13 && $("#kom_ok").length>0 ) {
    		var url = $("#kom_ok").attr('href');
    		window.location.href = url;
    	}
    });

    /*
    if($('#menuAddBox div.akt').length>1)
    	setInterval( "slideAktBoxSwitch()", 5000 );
	*/

    $("span.slideMenu").each(function(){
    	if(parseInt($(this).parent().outerHeight())>0){
    		$(this).css("top",parseInt(($(this).parent().outerHeight()-13)/2)+"px");
    	}
    });

    $(".slideMenu").hover(
	    function () {
	    	if($(this).parent().hasClass("zwin"))
	    		$(this).parent().removeClass('zwin').addClass('zwin_hover');
	    	else
	    		$(this).parent().removeClass('rozwin').addClass('rozwin_hover');
	    },
	    function () {
	    	if($(this).parent().hasClass("zwin_hover"))
	    		$(this).parent().removeClass('zwin_hover').addClass('zwin');
	    	else
	    		$(this).parent().removeClass('rozwin_hover').addClass('rozwin');
	    }
    );

    producenci();

    /*
    //getting fast translate
    var lang = new Array();
    $.ajax({
		url: $("base").attr("href")+'tools/js_translate.html', global: false, type: "POST", dataType: "json",
		success: function(data){
	    	for(i in data)
	    	{
	    		lang[i] = data[i];
	    	}
		},
	});
    alert(lang);
    */
});

function producenci() {

	var ok = true;
	var width = 0;
	$("#listaProducentow ul li img").each(function() {
		var img = new Image();
		img.src = $(this).attr("src");
		width += $(this).parent().parent().outerWidth(true);
		if(!img.complete) ok = false;
	});
	$("#listaProducentow ul").css("width", width);
	if(!ok) setTimeout(function() { producenci(); }, 150);

}

function slide(id)
{
	if( $('#sub_no'+id).parent().hasClass('active') )
	{
		$('#sub_no'+id).parent().slideUp(300,function(){
			$('#sub_no'+id).parent().removeClass('active').addClass('childrenBox').css('height', '0');
		});
	}
	else
	{
		$('#sub_no'+id).parent().css('height', 'auto').slideDown(300,function(){
			$('#sub_no'+id).parent().removeClass('childrenBox').addClass('active');
		});
	}
}

function slideAktBoxSwitch() {
    var active = $('#menuAddBox div.akt.active');
    if ( active.length == 0 ) active = $('#menuAddBox div.akt:last');
    var next = active.next().length ? active.next()
        : $('#menuAddBox div.akt:first');
    active.addClass('lastActive');
    next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            active.removeClass('active lastActive');
        });
}

function trim( str ) {
	str = str.replace(/^\s+/, '');
	for( var i = str.length-1; i > 0; i-- ) {
		if( /\S/.test( str[i] ) ) {
			str = str.substring( 0, i+1 );
			break;
		}
	}
	return str;
}

function kategoria(cat){

	var sub_set = $('#sub_no'+cat).size(); //sub_no# is set

	if( sub_set > 0 ){

		if( $('#sub_no'+cat+':visible').size()==0 ){
			$.post($("base").attr("href")+'kategoria/statistic.html', {
				id: cat
			});
			//$('.sub').slideUp('fast');
			$('#sub_no'+cat).slideDown('fast');
			$('#sub_no'+cat).parent().addClass("rozsuniete");
		}
		else{
			$('#sub_no'+cat).slideUp('fast');
			$('#sub_no'+cat).parent().removeClass("rozsuniete");
		}
   	}
   	else{
		window.location.href = $("base").attr("href")+'kategoria/index/'+cat+'.html';
   	}
}

function komunikat(comm_header, comm_txt, ok_url, another_type, anuluj) {

	var counter = 0;
	var timeout_handle = setInterval(function() {
		//opoznienie na wypadek wyswietlania innego komunikatu
		if( $("#info_preloader").length>0 && counter<100 ){
			counter++;
		}
		else{
			clearInterval(timeout_handle);

			//wielkosc okna
			var xScroll, yScroll;
			if (window.innerHeight && window.scrollMaxY) {
				xScroll = window.innerWidth + window.scrollMaxX;
				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
				if(document.documentElement.clientWidth){
					windowWidth = document.documentElement.clientWidth;
				} else {
					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 = xScroll;
			} else {
				pageWidth = windowWidth;
			}

			//polozenie na stronie
			var xPos, yPos;
			if (self.pageYOffset) {
				yPos = self.pageYOffset;
				xPos = self.pageXOffset;
			} else if (document.documentElemsent && document.documentElement.scrollTop) {	 // Explorer 6 Strict
				yPos = document.documentElement.scrollTop;
				xPos = document.documentElement.scrollLeft;
			} else if (document.body) {// all other Explorers
				yPos = document.body.scrollTop;
				xPos = document.body.scrollLeft;
			}


			var future_pos_top = parseInt(yPos+windowHeight/2)-200;
			future_pos_top = future_pos_top>50 ? future_pos_top : 50;

			var html = '<div id="info_preloader" style="display: none; z-index: 10; opacity: 0.5; filter: alpha(opacity=50); background-color: #000; position: absolute; left: 0px; top: 0px; width: '+pageWidth+'px; height: '+pageHeight+'px;"></div>';
			html += 	'<div id="info_content" style="left: '+(parseInt(xPos+windowWidth/2)-195)+'px; top: '+future_pos_top+'px;">';
			html +=			'<div id="comm_content">';
			html +=				'<div id="comm_header">'+comm_header+'</div>';
			html +=				'<div class="comm_txt">'+comm_txt+'</div>';

			if( another_type ){
				switch(another_type){
					case 'haslo':
						html += '<div class="comm_txt" style="text-align: center;"><a href="javascript:haslo();">#HotTrans#doNotRememberPass_SetTheNewOne&HotTrans&</a></div>';
						break;
					case 'rejestracja':
						html += '<div class="comm_txt" style="text-align: center; border-top: 1px solid #1a1a1a; padding: 5px 10px 0"><a href="klient/rejestracja.html">#HotTrans#doNotHaveAccountYet_Register&HotTrans&</a></div>';
						break;
					case 'dodany_towar':
						html += '<div class="buttons">';
						html += '	<a class="button left" href="javascript:hide_info()" id="kom_ok" >#HotTrans#continueShopping&HotTrans&</a>';
						html += '	<a class="button right" href="klient/koszyk.html" >#HotTrans#skipToCart&HotTrans&</a>';
						html += '<div class="clear"></div></div>';
						break;
					case 'towar_schowek':
						html += '<div class="buttons">';
						html += '	<a class="button left" href="javascript:hide_info()" id="kom_ok" >#HotTrans#continueShopping&HotTrans&</a>';
						html += '	<a class="button right" href="klient/schowek.html" >#HotTrans#skipToStorage&HotTrans&</a>';
						html += '<div class="clear"></div></div>';
						break;
					case 'konto_vs_bez_konta':
						html += '<div class="buttons">';
						html += '	<div class="left" style="text-align: center;">#HotTrans#iDoNotHaveAccount&HotTrans&<br /><a class="button" href="klient/login_guest.html" >#HotTrans#realizeOrderAsAGuest&HotTrans&</a></div>';
						html += '	<div class="right" style="text-align: center;" >#HotTrans#iHaveAccount&HotTrans&<br /><a class="button" id="kom_ok" href="javascript:hide_info();logowanie();" >#HotTrans#logIn&HotTrans&</a></div>';
						html += '<div class="clear"></div></div>';
						break;
				}
			}

			if( ok_url && anuluj ){
				html +=			'<div class="buttons">';
				html +=			'<a class="button right" id="kom_ok" href="'+ok_url+'">#HotTrans#ok&HotTrans&</a>';
				html +=			'<a class="button left"  href="javascript:hide_info()">#HotTrans#cancel&HotTrans&</a>';
				html +=			'<div class="clear"></div></div>';
			}
			else if(ok_url){
				html +=			'<div class="buttons" style="text-align: center;">';
				html +=			'<a class="button" id="kom_ok" href="'+ok_url+'">#HotTrans#ok&HotTrans&</a>';
				html +=			'</div>';
			}
			else if(anuluj){
				html +=			'<div class="buttons" style="text-align: center;">';
				html +=			'<a class="button" id="kom_ok" href="javascript:hide_info()">#HotTrans#cancel&HotTrans&</a>';
				html +=			'</div>';
			}
			html += 			'<div class="clear"></div>';

			html +=			'</div>';
			html += 		'<div class="clear"></div>';
			html += 	'</div>';

			$.ajax({
				url: $("base").attr("href")+'tools/js_translate.html',
				global: false,
				type: "POST",
				data: ({
				}),
				dataType: "json",
				success: function(data){

					html = str_replace_HotTrans(data, html);
					$("body").append(html);
					jQuery("#info_preloader").fadeIn(200, function(){
						jQuery("#info_content").fadeIn(200);
					});
				},
				error: function(data){
					$("body").append(html);
					jQuery("#info_preloader").fadeIn(200, function(){
						jQuery("#info_content").fadeIn(200);
					});
				}
			});
		}
	}, 100);
}

function str_replace_HotTrans(HotTrans, str){
	for(i in HotTrans)
	{
		str = str.replace( '#HotTrans#'+i+'&HotTrans&', HotTrans[i]);
	}
	return str;
}

function hide_info(){

	jQuery(document).ready(function(){
		jQuery("#info_content").fadeOut(200,function(){
			jQuery("#info_preloader").fadeOut(200,function(){
				jQuery("#info_preloader").empty();
				jQuery("#info_preloader").remove();
				jQuery("#info_content").empty();
				jQuery("#info_content").remove();
			});
		});
	});
}

function enter_search(wsk, e){
	if(e.keyCode == 13) {
		if( $(wsk).val() ) $(wsk).parent().submit();
	}
}

function szukaj_strona(page, szukaj, typ){
	$.post( $("base").attr("href")+'szukaj/lista/'+page+'.html', {
		szukaj: szukaj,
		typ: typ
	}, function(data){
		$('#content').html(data);
	} );
}

function logowanie_info(){
	var comm_header = '#HotTrans#realizeLoginRequired&HotTrans&';
	var comm_txt = '#HotTrans#realizeLoginRequiredTxt&HotTrans&';
	ok_url = 'javascript:logowanie_info_ok()';
	komunikat(comm_header, comm_txt, ok_url, false, false);
}

function logowanie_info_ok(){
	scroll(0,0);
	logowanie();
}

function logowanie(){
	hide_info();
	var txt = '<div style="margin: 20px;"><form action="klient/logowanie.html" method="post" id="pass_form" enctype="multipart/form-data">';
	txt += '<div style="padding: 5px;"><strong>#HotTrans#username&HotTrans&:</strong><input type="text" name="login" class="login" style="width: 300px; float: right;" /><div class="clear"></div></div>';
	txt += '<div style="padding: 5px;"><strong>#HotTrans#password&HotTrans&:</strong><input type="password" name="haslo" class="haslo" style="width: 300px; float: right;"/><div class="clear"></div></div>';
	txt += '<input type="hidden" name="refresh_url" value="'+window.location.href+'" /></form></div>';
	komunikat( '#HotTrans#loginBar&HotTrans&', txt, "javascript:$('#pass_form').submit();", 'rejestracja', true );
}

function haslo(){
	hide_info();
	var txt = '#HotTrans#passwordReminderTxt&HotTrans&'
	txt += '<form action="klient/haslo.html" method="post" id="pass_form" enctype="multipart/form-data">';
	txt += '<table class="comm_form"><tr><td class="noBorder">e-mail:</td><td class="noBorder">';
	txt += '<input type="text" id="email" name="email" value="" class="yellow" style="width: 200px" /></td></tr></table></form>';
	komunikat( '#HotTrans#passwordReminder&HotTrans&', txt, "javascript:$('#pass_form').submit();", '', true );
}

function newsletter(zapis) {

	var comm_header = '#HotTrans#newsletterReceiptMessage&HotTrans&';
	var ok_url = 'javascript:hide_info();';

	$.ajax({
		url: $("base").attr("href")+"tools/newsletter/"+(zapis ? 'zapisz' : 'wypisz')+".html",
		type: "POST",
		data: {
			email: $("input[name=newsletter_email]").val()
		},
		error: function() {
			komunikat(comm_header, '#HotTrans#newsletterReceiptMessageError&HotTrans&', ok_url, false, false);
		},
		success: function(data) {
			komunikat(comm_header, data, ok_url, false, false);
		}
	});

}

function formularzKontaktowy() {

	$.ajax({
		url: $("base").attr("href")+'podstrona/formularz_kontaktowy.html',
		global: false,
		dataType: "json",
		success: function(data) {
			var form_header = '#HotTrans#contactFormHead&HotTrans&';
			if(data.status == 1) {
				komunikat(form_header, data.msg, 'javascript:formularzKontaktowySubmit();', false, true);
				$("#kom_ok").css({"background-image" : "url('"+$("base").attr("href")+"media/dom/gfx/wyslij_btn.gif')", "width" : "54px"});
			} else komunikat(form_header, data.msg, 'javascript:hide_info();', false, false);
		},
		error: function(data){
			komunikat('#HotTrans#contactFormLoadingError&HotTrans&', '#HotTrans#contactFormLoadingErrorTxt&HotTrans&', "javascript:hide_info()", false, false);
		}
	});

}

function formularzKontaktowySubmit(){
	$("#formKontakt .doMsg").css("color", "#00690C").show();
	$.ajax({
		url: $("base").attr("href")+'podstrona/formularz_kontaktowy.html',
		global: false,
		type: "POST",
		data: $("#formKontakt").serialize(),
		dataType: "json",
		success: function(data) {
			if(data.status == 1) {
				$(".comm_txt").html(data.msg);
				$(".button_anuluj").empty().remove();
				$("#kom_ok").css({"background-image" : "url('"+$("base").attr("href")+"media/dom/gfx/ok_btn.gif')", "width" : "47px"});
				$("#kom_ok").unbind("click").attr("href", "javascript:hide_info();").removeClass("right");
				$(".buttons").css("text-align", "center");
			} else {
				$(".comm_txt").html(data.msg);
			}
		},
		error: function() {
			hide_info();
			komunikat('#HotTrans#contactFormSendError&HotTrans&', '#HotTrans#contactFormSendErrorTxt&HotTrans&', 'javascript:hide_info();', false, false);
		}
	});
}

function loader() {
	var pageWidth = $(document).width();
	var pageHeight = $(document).height();
	var windowHeight = $(window).height();

	var posTop = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		posTop = window.pageYOffset;
	} else if( document.body && document.body.scrollTop ) {
		//DOM compliant
		posTop = document.body.scrollTop;
	} else if( document.documentElement && document.documentElement.scrollTop ) {
		//IE6 standards compliant mode
		posTop = document.documentElement.scrollTop;
	}
	posTop = posTop + windowHeight/2 - 100;

	$('#loader_info').css('width', pageWidth+'px');
	$('#loader_info').css('height', pageHeight+'px');
	$('#loader_info_content').css('margin-top', posTop+'px');

	$("#loader_info").fadeIn(200);

	var handle = setInterval(function() {
		if( $("#loader_info").size()!=0 ){
			var now = new Date();
			var year = 1900 + now.getYear();
			var month = 1+now.getMonth();
			month = month<10 ? '0'+month : month;
			var day = now.getDate();
			day = day<10 ? '0'+day : day;
			var hours = now.getHours();
			hours = hours<10 ? '0'+hours : hours;
			var minutes = now.getMinutes();
			minutes = minutes<10 ? '0'+minutes : minutes;
			var seconds = now.getSeconds();
			seconds = seconds<10 ? '0'+seconds : seconds;
			$("#info_time").html(year+'-'+month+'-'+day+' '+hours+':'+minutes+':'+seconds);
		}
		else{
			clearInterval(handle);
		}
	}, 1000);
}

function hide_loader(){
	/*
	$(document).ready(function(){
		$("#loader_info_content").fadeOut(200,function(){
			$("#loader_info").fadeOut(200,function(){
			});
		});
	});
	*/
}

/* aktualnosci */
var newsInterval = null;

function slideSwitch() {
	var ilosc = $('#aktualnosci .item').length;
	if(ilosc>1){
		newsInterval = setInterval( "slideSwitchStart()", 7500 );
	}
}

function slideSwitchStart(){
    var active = $('#aktualnosci .item.active');
    if ( active.length == 0 ) active = $('#aktualnosci .item:last');
    var next = active.next().length ? active.next()
        : $('#aktualnosci .item:first');
    active.addClass('lastActive').find('.opis').animate({left: -365}, 500);
    next.css({opacity: 0.0}).addClass('active').animate({opacity: 1.0}, 750, function() {
        active.removeClass('active lastActive');
    }).find('.opis').delay(500).animate({left: 0}, 500);
}

function slideSwitchStop(){
	clearInterval(newsInterval);
}

$(document).ready(function(){
	
	Cufon.replace('h2, h3, #panel h4, .desc strong, .topik .cena, #aktualnosci h3, .galTitle');
	
	//interwal aktualnosci
	slideSwitch();

	//pokazywanie opisu w widoku listy produktow (ada-meble)
	$(".produkty h4").hover(function() {
			var wysokosc = $(this).find(".desc").height();
			$(this).find(".desc").stop(true, false).animate({marginTop: -wysokosc-20}, 250);
		},function() {
			$(this).find(".desc").stop(true, false).animate({marginTop: 0}, 500);
	});

	//pokazywanie opisu w widoku towaru (ada-meble)
	var wysokoscTopika = $('#opisProduktu .topik ').outerHeight();
	var wysokoscOpisu = $('#opisProduktu').outerHeight();
	$('#opisProduktu').css({height: wysokoscTopika+19, paddingTop: 330-wysokoscTopika-28});
	$('#opisProduktu .zaslona').css({marginTop: 110});

	$('#opisProduktu').hover(function(){
			if($('#opisProduktu').hasClass('zamkniety')) {
				if(wysokoscOpisu+wysokoscTopika-425>175) {
					$('#opisProduktu').stop(true, false).animate({paddingTop: 145, height: 175},400);
				} else {
					$('#opisProduktu').stop(true, false).animate({paddingTop: 145, height: 175},400);
					$('#opisProduktu .zaslona').css({display: "none"});
				}
			}
		}, function(){
			if($('#opisProduktu').hasClass('zamkniety')) {
				$('#opisProduktu').stop(true, false).animate({height: wysokoscTopika+19, paddingTop: 330-wysokoscTopika-28},1000);
			}
	});
	$('#opisProduktu .zaslona').click(function(){
		$('#opisProduktu').animate({height: wysokoscOpisu-330}, 1000).removeClass('zamkniety').addClass('otwarty');
		$(this).css({zIndex: 1}).children('span').fadeOut();
		$('#opisProduktu .chowacz').delay(1000).fadeIn();
	});
	$('#opisProduktu .chowacz').click(function(){
		$('#opisProduktu').stop(true, false).animate({paddingTop: 145, height: 175},1000).removeClass('otwarty').addClass('zamkniety');
		$(this).fadeOut(100);
		$('#opisProduktu .zaslona').fadeOut(1).delay(750).css({zIndex: 3}).fadeIn(500).children('span').fadeIn();
	});

	$('#listaProducentow a').hover(
		function () {
			var id = $(this).attr("id").replace(/[^0-9]+/gi, "");
			$.each($('#listaProducentow a'), function() {
				var temp_id = $(this).attr("id").replace(/[^0-9]+/gi, "");
				if(temp_id != id) $(this).find("img").stop().animate({opacity: '0.25'}, 250);
			});
		},
		function () {
			$('#listaProducentow a img').stop().animate({opacity: '1'}, 500);
		}
	);

	$('.gorneMenu ul.p1 li').hover(
		function () {
			$(this).find('.p2').css({display: "block"});
		}, function() {
			$(this).find('.p2').css({display: "none"});
	});
});

$(function(){
	/*var prodWidth = 0;
	$.each($("#listaProducentow li"), function() {
		prodWidth += $(this).outerWidth(true);
	});
	$("#listaProducentow ul").css("width", prodWidth);*/

    $(".centruj").mousemove(function(e) {
		var div = $('#listaProducentow');
		var ul = $('#listaProducentow ul');
		var divWidth = div.outerWidth();
		var lastLi = ul.find('li:last-child');
		var ulWidth = $("#listaProducentow ul").outerWidth(true);

		if(ulWidth > divWidth - 20) {
		  var lpLeft = $("#listaProducentow").position().left;
		  if(e.pageX > lpLeft && e.pageX < lpLeft + divWidth) {
		      var left = (e.pageX - lpLeft) * (ulWidth - (divWidth-10)) / (divWidth);
		      ul.css({left: -left});
		  } else if(e.pageX < lpLeft) {
			  ul.css({left: 0});
		  } else if(e.pageX > lpLeft + divWidth) {
			  ul.css({left: -(ulWidth-divWidth)});
		  }
		}
    });
});


