$("html").addClass("js");

$(document).ready(function() {
	
	$("<img/>").bind("load", function() {
 		$("#container-content").addClass("loaded");
	}).attr("src","/i/index_fon.jpg");
	
	/* предзагрузка фона и первого слайда */
	if($("body.inner").length) {
		$("<img/>").bind("load", function() {
 			$("#container-content-pad").addClass("loaded");
		}).attr("src","/i/inner_fon_end.jpg");
	}
	
	if($("body.index").length) {
		$("<img/>").bind("load", function() {
 			$("#container-content-pad").addClass("loaded");
		}).attr("src","/i/index_fon_main.jpg");		
	}
	
	if($("#index-banner-carousel").length) {
		$("#container-0").css("visibility", "hidden");
		$("#i-b-loader").show();
		$("#animated_panel").hide();
		
		$("<img/>").bind("load", function() {
			$("#container-0").css("visibility", "visible");
			$("#i-b-loader").hide();
			$("#animated_panel").show();			
		}).attr("src", $("#container-0").find("img").attr("src"));	
	}
	 
	/* schedule table */
	$(".schedule_button").delegate("span", "click", function() {
		var parent = $(this).parents(".schedule_table");
		parent.find('table').toggle('medium');
	});
	
	if($("#schedule").length) {
		var href = window.location.hash;
		href = href.replace("#","");
		if(href) {
			if($("#schedule-"+href).length) $("#schedule-"+href+" table").show('medium');
		}
	}
	
	/* online */
	$("#online-tip, #online-link, #online-img, .online-text").click( function() {
		var href = $(this).attr("hash");
		href = href.replace("#","");
		if(href) {
			$("#metro [value='"+href+"']").attr("selected", "selected");
		}
		fillfon();
		var obj = [];
		obj.response = $("#online-form-box");
		obj.done = 1;
		show_dynamic_content(obj, 'local');
		
		return false;
	});
	
	$(".index_blocks").delegate(".prev, .next", "click", function() {
		
		var el = $(this);
		var btns = el.parents('.buttons');
		sign = el.hasClass('prev') ? 1:-1;
		var carousel = el.parents(".index_block").find(".carousel-list");
		var left = parseInt(carousel.css("left"));
		var carousel_items = carousel.find("li").length;
		var item_width = carousel.find("li").width() + 14;
		var carousel_width = item_width*carousel_items;
		var min_delta = 0;
		var max_delta = sign*item_width*(carousel_items-2);
		// дизаблим кнопки
		btns.find('div').addClass('disabled');
		
		// вычисляем на сколько двигать
		var destination = sign==1 ? 
		Math.min(left + sign*item_width*2, min_delta)
		:
		Math.max(left + sign*item_width*2, max_delta)
		carousel.animate({"left": destination +"px"}, 'fast', function() {
			btns.find('div').removeClass('disabled');
			if(destination==min_delta) btns.find('div.prev').addClass('disabled');
			if(destination==max_delta) btns.find('div.next').addClass('disabled');
		});
	});

	if(('a[rel="colorbox"]').length) {
		$('a[rel="colorbox"]').live("click", function() {
			// смотрим загружен ли фон, елси да, то ничего не делаем
			var resize = true;
			if(!$("#precontainer").length) {
			resize = false;
			fillfon();
			} else show_indicator();
			
			var el = $(this);
			var path = $(this).attr('href');
			var number = $('a[rel="colorbox"]').index(el);
			var data =  $('a[rel="colorbox"]');
			
			/* "/"+$(this).attr('name')+'/' */
			$.getJSON(
	 		"/ajax/",
 			{
  				show_photo: true,
  				path: path,
  				type: $(this).attr('name'),
  				title: $(this).attr('title')
 			},
 			function(obj) {
 				
 				$("<img/>").bind("load", function() {
					
 					if (show_dynamic_content(obj, 'dynamic' , 'fade', 'slow')) {
 						$("#close_dynamic").show();
 						var content = $("#dynamic-content").find("#gallery-img");
						if($("#prev_photo").length) {
							$("#prev_photo").show().height(content.height()).find('a').height(content.height());
						}
						if($("#next_photo").length) {
							$("#next_photo").show().height(content.height()).find('a').height(content.height());
						}	

						if(resize) dynamic_content_resize();					
 					}
					
				}).attr("src",path);
				
 			});
			return false;
		})
	}
	
	$("#prev_photo, #next_photo").live("hover", function() {
		$(this).toggleClass('hovered');
	});
	
	
	$("#album_list").delegate(".video", "click", function() {
		fillfon();
		$.getJSON(
 		$(this).attr("href"), {
 	 		show_video: true
 	 	},
 		function(obj) {
 			show_dynamic_content(obj);
 		});
		return false;
	});	
	
	/* Движуха баннеров на главной */
	var max_slides = $("#index-banner").find('input').length;
	
	if(max_slides>2) {
		function automat() {
			move_slider(false);
		}
		var id = setInterval(automat, 10000);
	}
	
	$("#index-banner").hover( function() {
		clearInterval(id);
		$("#animated_panel").animate({"bottom": "0"},100);
		$(this).find("h2").show();
	}, function() {
		id = setInterval(automat, 10000);
		$("#animated_panel").animate({"bottom": "-55px"},100);
		$(this).find("h2").hide();
	});
	

	$("#prev_action, #next_action").click( function() {
		var el = $(this);
		if(!el.hasClass("disabled")) {
			var prev = el.hasClass('prev');
			move_slider(prev);
		}
	});
	
});

function move_slider(prev) {
	$("#prev_action, #next_action").addClass("disabled");
	$("#i-b-loader").show();
	var count = $("#index-banner").find('input').length;
	var destination = 0;
	var destination1 = 0;
	var left = parseInt($("#container-0").css("left"));
	var left1 = parseInt($("#container-1").css("left"));
			
	if(prev) {
		if(left==0) {
			$("#container-1").css("left","-916px");
			destination = 916;
			destination1= 0;
		} else {
			$("#container-0").css("left","-916px");	
			destination = 0;
			destination1= 916;	
		}
	} else {
		if(left==0) {
			$("#container-1").css("left","916px");
			destination= -916;
			destination1= 0;
		} else {
			$("#container-0").css("left","916px");
			destination= 0;
			destination1= -916;
		}
	}
			
	// тут смену контента замутим!
	var future_container = left==0 ? "#container-1":"#container-0";
	var past_container = left==0 ? "#container-0":"#container-1";
			
	var img = $(past_container).find('img');
	var link = $(past_container).find('a');
	var header = $(past_container).find('h2');
			
	var future_img = $(future_container).find('img');
	var future_link = $(future_container).find('a');
	var future_header = $(future_container).find('h2');
			
	if(img.length) {
		var imgclass = img.attr('class');
		
		if($("#"+imgclass).length) {
			
			var str = new String(imgclass);
			var str_id = str.split("-");
			var id = parseInt(str_id[str_id.length-1]);
					
			// увеличиваем или уменьшаем счетчик
			id = prev ? id-1:id+1;
			//alert(id+' '+count);
			if(id>=count) id = 0;
			if(id==-1) id=count-1;
			
			str_id[str_id.length-1] = id;
			str = str_id.toString();
			str = str.replace(/,/g,"-");
			
			if($("#"+str).length) {
				datastr = $("#"+str).attr("value");
				data = datastr.split("||");
						
				$("<img/>").bind("load", function() {
							
					future_img.attr("src", data[2]).removeClass().addClass(str);
					future_img.attr("alt", data[1]);
					future_header.text(data[1]);
							
					if(future_link.length) {
						// была и осталась
						// либо была и исчезла
						if(data[0]) {
							future_link.attr("href", data[0]);
						} else {
							future_img.unwrap();
						}
					} else {
						// не было ссылки, но появилась
						if(data[0]) {
							future_img.wrap("<a href=\""+data[0]+"\"></a>");
						}
					}
						
						
					$("#prev_action, #next_action").removeClass("disabled");
						/*
						if(id==0) $("#prev_action").addClass("disabled");
						if(id==count-1) $("#next_action").addClass("disabled");
						*/
						$("#i-b-loader").hide();
					
						// если видел контейнер 0, то выезжает контейнер 1
						// классы не будем менять, пусть по кругу бегает!
			
						$("#container-1").animate({"left": destination1+"px"},'fast')
						$("#container-0").animate({"left": destination+"px"},'fast', function(){
						//$("#prev_action, #next_action").removeClass("disabled");
					});
					
				}).attr("src", data[2]);
			}
		}
	
	}
}

function loadform(alias)
{
 $('#'+alias).ajaxForm(
 { 
  dataType:  'json', 
  beforeSubmit: function(arr, $form, options) {
  		$(".order_alert").empty().hide();
  		$(".form-field-notice").removeClass("form-field-notice");
  		$(".default-field-notice").removeClass("default-field-notice");
 		
  		// http://jquery.malsup.com/form/#options-object
 		var alias = $form.attr('id');
 		var clicked = $("#"+alias).find("input.form_submit");
 		
 		//$("#submit_data");
 		var params = [];
 		
 		params["loader_class"] = alias+"-wheel";
 		params["disabled_class"] = alias+"-disabled";
 		params["loader_delta_top"]=clicked.height() + 6;
 		params["loader_delta_left"]=-3;
 		
 		show_indicators(clicked, params);
 		
  },
  success: function(data) {
  	
  	hide_indicators();
  	
  	if(data.items) $(data.items).addClass("form-field-notice");
  	if(data.divs) $(data.divs).addClass("default-field-notice");
  	
  	//выводим все алерты
  	if(data.notes) {
  		for(var i in data.notes) {
  			if($("#"+i+"_alert").length) $("#"+i+"_alert").html("<span>"+data.notes[i]+"</span>").show();
  		}
  	} 
  	
  	dynamic_content_resize();

  	if(data.done==0) {
  		if($("#captcha-img").length) {
  			// && data.notes['captcha']
  			$("#captcha-img").attr("src","/CaptchaSecurityImages.php?width=100&height=30&characters=6&"+Math.random());
  		}
  	}
  	
	if(data.done==1) {
  			$("#formajaxloader").show();
  			setTimeout(function(){window.location = window.location}, 2500);
  	}
  	
  	if(data.done==2) {
  			setTimeout(function(){window.location = data.link}, 500);
  	}
  	
  	if(data.done==3) {
  	 		 	 	
  			var pre_height = parseInt($("#pre-send-order").css("height"));
  			
  			$("#pre-send-order").hide();
  			$("#post-send-order").html(data.response);
  			$("#pre-send-order").empty();
  			
  			/*
  			var top = parseInt($(window).scrollTop());
  			var post_height = parseInt($("#post-send-order").css("height"));
  			alert(top);
  			$(window).scrollTop(top+post_height-pre_height);
  			*/
  			
  			dynamic_content_resize();
  	}
  	
  	// for new version of jquery and jquery.form
  	if(data.done==5) {
    	$.getJSON(
 		"/ajax/", {
 	 		show_html_after_form_submit: true,
 	 		type: data.type,
 	 		params: data.params
 		},
 		function(obj) {
 			
 			if(obj.done) {
   			var pre_height = parseInt($("#pre-send-order").css("height"));
   			
  				$("#pre-send-order").hide();
  				$("#post-send-order").html(obj.response);
  				$("#pre-send-order").empty();
  			
  				dynamic_content_resize();	
  			
 			}	
 		});		
  	}
  	
  	
  	if(data.done==4) {
  		$.getJSON(
 		"/ajax/", {
 	 		show_html_after_file_upload: true,
 	 		id: data.json['id']
 		},
 		function(obj) {
   			
  			$("#pre-send-order").hide();
  			$("#post-send-order").html(obj.response);
  			$("#pre-send-order").empty();
  			
  			dynamic_content_resize();		
 		});
  	}
  }
 });	
}
