	function __pi(str)
	{
		tmp = parseInt(str);		
		
		if (tmp+'_' == 'NaN_')
			tmp = 0;
			
		return tmp;
	}	
	
	function galleryRight()
	{
		//defenition
		right = this;
		gal = $(this).parent('.gallery').get(0);
		slider = $(cont).find('.slider').get(0);
		cont = $(gal).find('.cont').get(0);
		
		//target position
		shift = __pi($(slider).css('margin-left'));		
		
			
		var tmp = 0;
		var curent;
		var prev;
		//target prev element
		$(slider).find('img').each(
		function ()
		{
			tmp += __pi($(this).width());
			
			if (-1*tmp+__pi($(this).width())-5 >= shift)
			{
				prev = this;
			}
		}
		);
		
		
		if (prev)
		{
			shift += __pi($(prev).width());					
			$(slider).animate({ marginLeft: shift},1000);
		}
	}
	function galleryLeft()
	{
		//defenition
		left = this;
		gal = $(this).parent('.gallery').get(0);
		slider = $(cont).find('.slider').get(0);
		cont = $(gal).find('.cont').get(0);
		
		//target position
		shift = __pi($(slider).css('margin-left'));			
		
		var tmp = 0;
		var curent;
		var next;
		//target next element
		$(slider).find('img').each(
		function ()
		{
			tmp += __pi($(this).width());
			
			if (tmp<=shift)
			{
				curent = this;
				next = $(this).next('img').get(0);				
			}
		}
		);
		
		if (!next)
			next = $(slider).find('img:first').get(0);
		
		shift -= __pi($(next).width());
					
		if (-1*shift <= (__pi($(slider).width())-__pi($(cont).width())+__pi($(next).width())))	
			$(slider).animate({ marginLeft: shift},1000,"swing");						
		
	}
	function galleryConstruct(gal)
	{
		cont = $(gal).find('.cont').get(0);
		slider = $(cont).find('.slider').get(0);
		left = $(gal).find('.left').get(0);
		right = $(gal).find('.right').get(0);
		var width = 0;
		var height = 0;
		
		//calculating width height
		$(slider).find('img').each(
		function ()
		{
			width += __pi($(this).width());			
			height = height>__pi($(this).height()) ? height : __pi($(this).height());			
		}
		);
		
		$(slider).width(Math.round(width*1.1));
		$(slider).height(Math.round(height*1.1));
		$(slider).css('margin-left','0px');
		$(cont).height(Math.round(height*1.1));
		$(gal).height(Math.round(height*1.1));
		
		$(left).click(galleryLeft);
		$(right).click(galleryRight);
		
		

		//target position
		shift = __pi($(slider).css('margin-left'));			
		
		var tmp = 0;
		var curent;
		var next;
		//target next element
		$(slider).find('img').each(
		function ()
		{
			tmp += __pi($(this).width());
			
			if (tmp<=shift)
			{
				curent = this;
				next = $(this).next('img').get(0);				
			}
		}
		);
		
		if (!next)
			next = $(slider).find('img:first').get(0);
		
		shift -= __pi(1);
					
		if (-1*shift <= (__pi($(slider).width())-__pi($(cont).width())+__pi($(next).width())))	
			$(slider).animate({ marginLeft: shift},1000,"swing");			
	}	