/**
 * jQuery.ScrollTo - Easy element scrolling using jQuery.
 * Copyright (c) 2007-2009 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com
 * Dual licensed under MIT and GPL.
 * Date: 5/25/2009
 * @author Ariel Flesler
 * @version 1.4.2
 *
 * http://flesler.blogspot.com/2007/10/jqueryscrollto.html
 */
;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);


var interes_label = 'váš e-mail';

$(function(){

// HOMEPAGE
	$('body.homepage').removeClass('css');
	$('#dispath ul ul').hide();
	$('#dispath > ul > li').hover(
		function(){
			$(this).find('ul').stop(true, true).slideDown();
		},
		function(){
			$(this).find('ul').slideUp();
		}
	);

// PRODUCT LIST	
	$('.product').hover(
		function() {	$(this).addClass('product-open'); },
		function() {	$(this).removeClass('product-open'); }
	)

// GALERIE
	$('.gallery a').click(function(){
		$('<img style="display:none;" id="hidden">').appendTo('body');
		$('#hidden').attr('src', $(this).attr('href'));
		$('#hidden').load(function(){
			$('#big').attr('src', $('#hidden').attr('src'));
			var _w = parseInt($('#hidden').width());
			var _h = parseInt($('#hidden').height());
			
			if(_w < 458) { _h = Math.floor(458/_w * _h); }
			
			$('#big').animate({height: _h + 'px'});
			$('#hidden').remove();
		});
		return false;
	});

// INTERES
	$('#interes-form label').hide();
	if($('.NoticerError').length==0 && $('.msg').length==0) {
		$('#interes-form').hide();
		$('#interes-form input[type=text], #interes-form textarea').each(function(){
			$(this).val( $(this).prev("label").text() ).attr("interes_label", $(this).prev("label").text());
		});
	}
	$('.interes').click(function(){
		if($('#interes-form:visible').length) {	$('#interes-form').slideUp(); }
		else { $('#interes-form').slideDown(); }
		return false;
	});
	$('#interes-form input[type=text], #interes-form textarea').focus(function(){
		if( $(this).val() == $(this).attr("interes_label") ) { $(this).attr('value', ''); }
	});
	$('#interes-form input[type=text], #interes-form textarea').blur(function(){
		if( $(this).val() == '' ) { $(this).attr('value', $(this).attr("interes_label")); }
	});

	if($('#product-list').length > 0) {
		var paging = new Pager();
	}

});


// SCROLLER
Pager = function(){
	this.root = $('#product-list');
	this.maxRows = 3;
	this.itemHeight = 271;
	this.current = parseInt(document.location.href.replace(/^[^\?]+\??/,'') || 1);
	
	this.initRoot();
	this.walkItems();
	this.makePager();
	this.makeSituation();

	var that = this;

	$('#pager a,#paging a').live('click',function(){
		var url_a = $(this).attr('href').split('?');
		that.current = ( url_a[1] == '' ? 1 : url_a[1] );
		that.makeSituation(true);
		return false;
	});
	
	$(window).resize(function() {
		that.initRoot();
		that.walkItems();
		that.makePager();
		that.makeSituation();
	});
};
Pager.prototype.initRoot = function(){
	this.root_h = this.maxRows * this.itemHeight;
	this.root_w = Math.floor((( parseInt($('html').width()) - 960 ) / 2) - 80) + 619;
	this.root_w = this.root_w > 619 ? this.root_w : 619;

	this.pages = 1;
	this.rows = 1;
	this.inc = 0;
	this.root.css({'height': this.root_h + 'px', 'width': this.root_w + 'px'});
};
Pager.prototype.walkItems = function(){
	this.root.find('.clear').remove();
	var that = this;
	$('.product').each(function(){
		var _w = parseInt($(this).width()) + 1;
		if((that.inc + _w) > that.root_w) {
			that.inc = _w;
			that.rows++;
			$(this).before('<span class="clear" />');                                             
		}
		else {
			that.inc += _w;
		}
		if(that.rows > that.maxRows) {
			that.rows = 1;
			that.pages++;
		}
		$(this).attr({'page': that.pages});
		//$(this).find('h2').text(_w);
	});
};
Pager.prototype.makePager = function(){
	if($('#pager').length == 0)
		this.root.append('<div id="pager"><a href="#" class="prev">Předchozí</a><a href="#" class="next">Další</a></div>');
	if($('#paging').length == 0)
		this.root.append('<div id="paging" />');
	else
		$('#paging').empty();
	for(i=1; i <= this.pages; i++){
		this.root.find('#paging').append('<a href="?' + i + '" rel="' + i + '">' + i + '</a>');
	}
};
Pager.prototype.makeSituation = function(scroll){
	$('.product[page!=' + this.current + ']').hide();
	$('.product[page=' + this.current + ']').show();

	$('#paging a').removeClass('active');
	$('#paging a[rel=' + this.current + ']').addClass('active');

	if(this.pages == 1)
		$('#paging').hide();
	else
		$('#paging').show();
	
	if(this.current > this.pages) {
		this.current = 1;
		this.makeSituation();
		return;
	}		

	$('#pager .next').attr('href', $('#paging a.active').next('a').attr('href'));
	$('#pager .prev').attr('href', $('#paging a.active').prev('a').attr('href'));
	$('#pager a').removeClass('hidden');
	if(this.pages == this.current) {
		$('#pager .next').attr('href', '#').addClass('hidden');
	}
	if(this.current == 1) {
		$('#pager .prev').attr('href', '#').addClass('hidden');
	}
	if(scroll)
		$.scrollTo('header', 300);
};

