
$(document).ready(function() {

	var galler_n = $("div.galler").length; //alert(galler_n);
	var unclass = [];
	var width_img =  [];
	var right_marg =  [];	
	var wb_left = [];
	var wb_right = [];
	var wb_top = [];
	var wb_bottom = [];
	var sp = [];
	var time_step = [];
	var hodleft = [];
	var maxhod = [];
	var m_width	 = [];
	var fmc_width = [];
	var pw = []; 
	var namber_all = [];
	var k = [];
	var sed = [];
	var hl = [];
	var kp = [];
	var kpn = [];
	var shag = [];

	
	$("div.galler").each(function (i) { //alert(i);
		unclass[i] = $(this).attr("class").replace('galler ', ''); 
		width_img[i] = parseInt($('div.' + unclass[i] + ' .foto_mm .cont-galler').width());
		right_marg[i] =  parseInt($('div.' + unclass[i] + ' .foto_mm .cont-galler').css("margin-right").replace('px', ''));	
		wb_left[i] = parseInt($('div.' + unclass[i] + ' .foto_mm .cont-galler').css("border-left-width").replace('px', ''));
		wb_right[i] = parseInt($('div.' + unclass[i] + ' .foto_mm .cont-galler').css("border-right-width").replace('px', ''));
		wb_top[i] = parseInt($('div.' + unclass[i] + ' .foto_mm .cont-galler').css("border-top-width").replace('px', ''));
		wb_bottom[i] = parseInt($('div.' + unclass[i] + ' .foto_mm .cont-galler').css("border-bottom-width").replace('px', ''));
		sp = [500,500]; //Скорость в пикселей в секунду
		//time_step = [2000,331];
		kpn = [0,1];
		hodleft[i] = 0;
		pw[i] =width_img[i] + right_marg[i] + wb_left[i] + wb_right[i];
		$("div." + unclass[i] + " div.foto_mm").css("overflow", "hidden");
		namber_all[i] = $("div." + unclass[i] + " div.foto_mm .cont-galler").length;
		$( ".fm_conteiner", this).children("div.cont-galler").each(function (nu) {
			$(this).attr("id", unclass[i] + nu);
		});
		sed[i] = $( ".fm_conteiner", this).children("div.cont-galler").length;		
		
		//alert(sed[i]);
	});

	widfotom();
	$(window).resize(function(){
		widfotom();
	});  
	

	function widfotom(){	

		$("div.galler").each(function (i) {

				kp[i] = kpn[i];
				shag[i] = pw[i]*kp[i];	
				m_width[i] =  $("div." + unclass[i] + " div.foto_wid").width();	
				fmc_width[i] = namber_all[i]*pw[i];			
				k[i] = m_width[i]/pw[i];	
				k[i]= Math.floor(k[i]);
				m_width[i] = pw[i]*k[i] - right_marg[i];	
				$("div." + unclass[i] + " div.foto_m").css("width", m_width[i]);
				$("div." + unclass[i] + " div.foto_mm").css("width", m_width[i]);				
				$("div." + unclass[i] + " div.fm_conteiner").css("width", fmc_width[i]);			
				if(fmc_width[i] > m_width[i]) {
					 maxhod[i] = fmc_width[i] - m_width[i] - right_marg[i];
				} 
				if( shag[i] == 0){
				kp[i]	= (m_width[i] + right_marg[i])/pw[i];
				shag[i] =  pw[i]*kp[i]; //alert(shag[i]);
				}	
			arowpos(i);			
		});
		
	}
	
	
	$("div.fm-left-arow").click(function () {
		name_gall = $(this).parent(".foto_m").parent(".galler").attr("class").replace('galler ', '');		
		for (var zina = 0; zina < galler_n; zina++) {
			if(name_gall == unclass[zina]){
				namber_gall = zina;
			}
		}

		ost = -hodleft[namber_gall];
		if(ost >= shag[namber_gall]){
			hl[namber_gall]	=  shag[namber_gall];
		}else{
					hl[namber_gall] = ost; //alert(ost);
				}
		
		if(!$("div." + unclass[namber_gall] + " div.fm_conteiner").is(":animated") ) {
			hodleft[namber_gall] = hodleft[namber_gall] + hl[namber_gall];
			time_step[namber_gall] = hl[namber_gall]*1000/sp[namber_gall];
			$("div." + unclass[namber_gall] + " div.fm_conteiner").animate({left: hodleft[namber_gall]}, time_step[namber_gall]);
			arowpos(namber_gall);
		}
  });
	
	
	


	$("div.fm-right-arow").click(function () {
		name_gall = $(this).parent(".foto_m").parent(".galler").attr("class").replace('galler ', '');		// alert(name_gall);
		for (var zina = 0; zina < galler_n; zina++) {
			if(name_gall == unclass[zina]){
				namber_gall = zina;  
			}
		}		
		
		
		ost = fmc_width[namber_gall] + hodleft[namber_gall] - m_width[namber_gall];
		if(ost >= shag[namber_gall]){
			hl[namber_gall]	=  shag[namber_gall];
		}
		if(ost < shag[namber_gall]){
					hl[namber_gall] = ost - right_marg[namber_gall]; //alert (ost);
		}
		//alert(hodleft[namber_gall] );
		if(!$("div." + unclass[namber_gall] + " div.fm_conteiner").is(":animated") ) {		
			hodleft[namber_gall] = hodleft[namber_gall] - hl[namber_gall];
			time_step[namber_gall] = hl[namber_gall]*1000/sp[namber_gall]; //alert(time_step[namber_gall] );
			$("div." + unclass[namber_gall] + " div.fm_conteiner").animate({left: hodleft[namber_gall]}, time_step[namber_gall]);
			arowpos(namber_gall); 
		} 			
  });
	
	

	function arowpos(ng){ //alert(ng);
		abshodleft = Math.abs(hodleft[ng]);
		if(abshodleft > maxhod[ng] ){  //alert("ng");
						hodleft[ng] = hodleft[ng] + pw[ng];
						time_step[namber_gall] = hl[namber_gall]*1000/sp[namber_gall];
						$("div." + unclass[ng] + " div.fm_conteiner").animate({left: hodleft[ng]}, time_step[ng]);
		}
		
		if(fmc_width[ng] <= m_width[ng] + right_marg[ng]){		
					$("div." + unclass[ng] + " div.fm-left-arow").hide();
					$("div." + unclass[ng] + " div.fm-right-arow").hide();
					$("div." + unclass[ng] + " div.fm-left-arow-fls").hide();
					$("div." + unclass[ng] + " div.fm-right-arow-fls").hide();					 				
					hodleft[ng] = 0;
					$("div." + unclass[ng] + " div.fm_conteiner").animate({left: hodleft[ng]}, time_step[ng]);
		}else{						
					if(abshodleft >= maxhod[ng] ){
						$("div." + unclass[ng] + " div.fm-right-arow").hide();
						$("div." + unclass[ng] + " div.fm-right-arow-fls").show();
					}else{$("div." + unclass[ng] + " div.fm-right-arow").show(); $("div." + unclass[ng] + " div.fm-right-arow-fls").hide();}
					
					if(hodleft[ng] >= 0 ){
						$("div." + unclass[ng] + " div.fm-left-arow").hide();
						$("div." + unclass[ng] + " div.fm-left-arow-fls").show();
					}else{$("div." + unclass[ng] + " div.fm-left-arow").show(); $("div." + unclass[ng] + " div.fm-left-arow-fls").hide();}	
			}
	}	

	

	 
			
			$(".cont-galler a").hover(
      function () { 
			
					if( $("~ div", this).length &&  v_d == 0){
						$("." + name_gall + ">#" + star_id).animate({height: "hide"}, time_anime_ups,function(){$(this).remove()  });
						 s_d = 1;
						name_gall = $(this).parent("div.cont-galler").parent(".fm_conteiner").parent(".foto_mm").parent(".foto_m").parent(".galler").attr("class").replace('galler ', '');
						for (var zina = 0; zina < galler_n; zina++) {
							if(name_gall == unclass[zina]){
								namber_gall = zina;
							}
						}
						left_shag = hodleft[namber_gall]; //alert(left_shag);
						this_wimg = pw[namber_gall]; //alert(this_wimg);
						namber_frame = parseInt($(this).parent("div.cont-galler").attr("id").replace(name_gall, '')) + 1;						
						left_vdiv = (namber_frame-1)*this_wimg + left_shag - 0;
						vnt = $("~ div", this).html();						
							$("." + name_gall).append('<div class="flowind" id="vd' + namber_frame + '"><a href="#" class="ano">' + vnt + '</a></div>');
							$("." + name_gall + ">#vd" + namber_frame).css("left", left_vdiv);							
							if(c_t == 0){
								$("." + name_gall + ">#vd" + namber_frame).animate({left:left_vdiv,height: "show"}, time_anime_ap );
							}else{$("." + name_gall + ">#vd" + namber_frame).show();}
							star_id =  "vd" + namber_frame;									
					}
				
      }, 
      function () {

				$("." + name_gall + ">#vd" + namber_frame).mouseover(function(){
					v_d = 1;		
				});
				$("." + name_gall + ">#vd" + namber_frame).mouseout(function(){
					v_d = 0; outmt();	c_t = 1; //alert(s_d);	
				});
			s_d = 0;
			 outmt();								

      });
			


		
 function outmt(){ 
						id_t = setTimeout("outm()", 50);	 
					 }	

});

var s_d = 0;
var v_d = 0;
var name_gall;	
var namber_frame;
var star_id;			
var id_t;
var id_tt;
var c_t = 0;
var time_anime_ap = 20;
var time_anime_ups = 20;

function outm(){ // alert(v_d +"," + s_d);
						 if(v_d == 0 && s_d == 0){  //alert(v_d +"," + s_d);
							//$("." + name_gall + ">#vd" + namber_frame).hide();
							$("." + name_gall + ">#vd" + namber_frame).animate({height: "hide"}, time_anime_ups,function(){$(this).remove()  });
							//$("." + name_gall + ">#vd" + namber_frame).remove();
						}
						c_t = 0;
						
}

