var prev_pic_width = 210+15;
var big_pic_width = 430;
var items_in_preview_container = 2;

 
 function enable_disable_buttons(mL, co)
 {
	mL = parseInt(mL);
	if(mL == 0) $('.prev').addClass('disabled');
	if(mL < 0) $('.prev').removeClass('disabled');
	hided_left = mL;
	if(hided_left < 0) hided_left = 0-hided_left;
	if( co*prev_pic_width - items_in_preview_container*prev_pic_width - hided_left > 0 ) $('.next').removeClass('disabled');
		else $('.next').addClass('disabled');
 }



(function($){
	$.fn.genSlider = function(options){
		return this.each(function(i){
			var el = this;
			el.index = i;
			$el = $(el);
			el.imgs = $el.find('img');
			if (el.imgs.length == 0)
				return true;
			// обворачиваем превьюшки служебным мусором			
			$el.wrap('<div class="gallery"><div class="gallery-preview"><div class="gallery-preview-cont"></div></div></div>');
			var $gallery = $el.parent().parent().parent();
			// создаем контейнер для отображения основных фотографий
//			$gallery.prepend('<table border="0" cellpadding="0" cellspacing="0" class="gallery-cont-border"><tr><td><div class="gallery-cont" ><div class="gallery-cont2"><div class="gallery-cont-wrapp" style="width:'+(el.imgs.length*big_pic_width)+'px"></div></div></div></td></tr></table>');
			var $galleryCont = $('.gallery-cont .gallery-cont2 .gallery-cont-wrapp', $gallery);
			$galleryPreview = $el.parent().parent();
 
			{
				// добавляем элементы прокрутки превьюшек
				$galleryPreview.append('<div class="gal_prev_l"></div><div class="gal_prev_r"></div>');
				$galleryPreview.append('<div class="next disabled"></div><div class="prev disabled"></div>');

				var $ul = $('ul', $galleryPreview); 
				var marginLeft = $ul.css('margin-left');
				
				$('.next, .prev', $galleryPreview).click(function(){
					if (window.galleryAnimate == true) return false;

					window.galleryAnimate = true;
					if ( ($(this).hasClass('next')) && (!$(this).hasClass('disabled')) )
					{
						marginLeft = parseInt(marginLeft) - prev_pic_width;
						var s = -((el.imgs.length*prev_pic_width) - (el.imgs.length % items_in_preview_container)*prev_pic_width);
						if (marginLeft < s) {
							window.galleryAnimate = false;
							return false;
						}	
						$ul.animate({
							marginLeft: parseInt(marginLeft) + 'px'
						}, big_pic_width, 'easeInQuint', function(){
							window.galleryAnimate = false;
						});
						enable_disable_buttons(marginLeft, el.imgs.length);
					}
					else
					{
						window.galleryAnimate = false;
						if ( ($(this).hasClass('prev')) && (!$(this).hasClass('disabled')) )
						{
							marginLeft = parseInt(marginLeft) + prev_pic_width;
							if (marginLeft > 0) {
								window.galleryAnimate = false;
								return false;
							}
							$ul.animate({
								marginLeft: parseInt(marginLeft) + 'px'
							}, big_pic_width, 'easeInQuint', function(){
								window.galleryAnimate = false;
							});
							enable_disable_buttons(marginLeft, el.imgs.length);
						}
						else window.galleryAnimate = false;
					}
				});


				enable_disable_buttons(marginLeft, el.imgs.length);
				
			}
			
			el.imgs.each(function(indx){
				var $img = $(this);
				$img.parent('a');
				var image = new Image();

				image.src = $img.parent("a").attr('href');
				image._indx = indx;
				this._image = image;


				$galleryCont.append(image);

			});
		});
	}
})(jQuery)
