$j = jQuery.noConflict();

$j(document).ready(function(){

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Подключаем календарь
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j.datepicker.setDefaults(
	$j.extend($j.datepicker.regional["ru"])
	);

	$j("#date-from,#date-to").datepicker({
		changeMonth: true,
		changeYear: true,
		dateFormat: "dd.mm.yy",
		yearRange: "2010:2020"
	});

	$j("#ui-datepicker-div").css("z-index", "1002");

	$j(".calendar").click(function(){
		$j("input", $j(this).parent()).focus();
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Операции с кол-вом номеров
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j(".order-number input:text").val(0);

	$j(".order-number input:text").focus(function(){
		if ($j(this).val()==0)
		$j(this).val("");
	});

	$j(".order-number input:text").blur(function(){
		if ($j(this).val()=="")
		$j(this).val(0);
	});

	$j(".order-number input:text").keyup(function(event) {

		this.value = this.value.replace(/[^\d]+/g,'');
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Показать форму
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j("#show-order-form").click(function(){

		$j("#form-order").show();

		$j("#fish").animate({opacity: 0.4}, 0);
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Закрыть форму
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j("#form-order span.close").click(function(){

		$j("#form-order").hide();
		$j("#reservation").hide();
		$j("#accepted").hide().find(".center").text("");

		$j("#fish").animate({opacity: 1.0}, 0);
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Переход к форме бронирования
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j("#form-order button.choose-numbers").click(function(){

		if ($j(this).hasClass("control-blocked"))
		return false;

		$j(".error").removeClass("error");
		$j("#error-console1,#error-console2").html("&nbsp;");

		var error_text 	= "Заполните обязательные поля!";
		var date_from 	= $j("#date-from").val();
		var date_to 	= $j("#date-to").val();
		//var days 		= $j("#day-count").val();
		var persons 	= $j("#person-count").val();

		if (date_from=="") {
			$j($j("#date-from").addClass("error"));
		}

		if (date_to=="") {
			$j($j("#date-to").addClass("error"));
		}

		if (persons=="") {
			$j($j("#persons-count").addClass("error"));
		}

		var text = "";
		var count = 0;
		var count_summ = 0;

		$j(".order-number").each(function(){

			var count = $j("input:text", this).val();
			var check = $j("input:checkbox:checked", this).val();

			if (check == "on") check="+ питание"; else check="";

			if (count > 0) {

				if (text!="")
				text += ";  ";

				text += $j("span", this).text() + " (" + count + ""+ check +")";
				count_summ += parseInt(count);
			}

		});

		if (count_summ > persons) {
			alert ("Внимание! Количество номеров превышает количество гостей.");
			return false;
		}

		if ((date_from=="")||(date_to=="")||(persons=="")) {
			$j("#error-console1").text(error_text);
			return false;
		}

		error_text 	= "Выберите количество необходимых вам номеров.";

		if (text=="") {
			$j("#error-console1").text(error_text);
			return false;
		}

		$j("#order-nums").text(text);

		$j("#reservation").show();
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Вернуться к выбору номера
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j("#reservation span.close").click(function(){
		$j("#reservation").hide();
		$j("#accepted").hide().find(".center").text("");
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Ожидание подгрузки изображений
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	/*$j(".gallery ul.images img").load(function(){
	$j(this).show();
	});*/

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	"Гармошка"
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j(".order-number span.dotted").live("click", function(){
		$j("span.regular").removeClass("regular").addClass("dotted").next().slideUp(400);
		$j(this).removeClass("dotted").addClass("regular").next().slideDown(400);
	});

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Выбор параметров
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j("#date-from").change(function(){
		$j("#order-from").text($j(this).val());
	}).val("").change();

	$j("#date-to").change(function(){
		$j("#order-to").text($j(this).val());
	}).val("").change();

	$j("#person-count").change(function(){
		$j("#order-count").text($j(this).val());
	}).change();

	$j("#order-nums").val("");
	$j("#user-name").val("");
	$j("#user-phone").val("");
	$j("#user-email").val("");

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Стрелки право/лево
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	/*$j(".move-right").click(function(){

	if ($j(this).hasClass("control-blocked"))
	return false;

	$j(".controls").addClass("control-blocked");

	var wrap = $j(this).parent().find(".gallery");

	var li_count = $j("ul li", wrap).length;
	var ul_inner_width = parseInt(wrap.width());

	var li_width = parseInt($j("li", wrap).css("width")) + 6;
	var li_inner_count = parseInt((ul_inner_width)/li_width);

	var ul_left = parseInt($j("ul", wrap).css("left"));
	var ul_width = li_count*li_width;

	//alert(ul_width);

	var ul_offset = ((ul_width-ul_inner_width+ul_left) >= ul_inner_width) ? ul_inner_width : (ul_width-ul_inner_width+ul_left);

	//alert(ul_offset);

	if (ul_offset>0) {
	$j("ul", wrap).stop().animate({ "left": "-="+ul_offset }, 1000, function(){$j(".controls").removeClass("control-blocked");});
	}
	else {
	$j(".controls").removeClass("control-blocked");
	}
	});

	$j(".move-left").click(function(){

	if ($j(this).hasClass("control-blocked"))
	return false;

	$j(".controls").addClass("control-blocked");

	var wrap = $j(this).parent().find(".gallery");

	var li_count = $j("ul li", wrap).length;
	var ul_inner_width = parseInt(wrap.width());

	var li_width = parseInt($j("li", wrap).css("width")) + 6;
	var li_inner_count = parseInt((ul_inner_width)/li_width);

	var ul_left = parseInt($j("ul", wrap).css("left"));
	var ul_width = li_count*li_width;

	var ul_offset = ((-ul_left) >= ul_inner_width) ? ul_inner_width : -ul_left;

	if (ul_offset>0) {
	$j("ul", wrap).stop().animate({ "left": "+="+ul_offset }, 2000, function(){$j(".controls").removeClass("control-blocked");});
	}
	else {
	$j(".controls").removeClass("control-blocked");
	}
	});*/

	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//	Выбор параметров
	///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	$j("#send-order-request").click(function(){

		if ($j(this).hasClass("control-blocked"))
		return false;

		$j(".controls").addClass("control-blocked");

		$j(".error").removeClass("error");
		$j("#error-console1,#error-console2").html("&nbsp;");
		$j("#accepted").hide().find(".center").text("");

		var name 		= $j("#user-name").val();
		var phone 		= $j("#user-phone").val();
		var email 		= $j("#user-email").val();
		var date_from 	= $j("#date-from").val();
		var date_to 	= $j("#date-to").val();
		var persons 	= $j("#person-count").val();
		var type 		= $j("#order-nums").text();


		if ((name!="")&&(phone!="")&&(date_from!="")&&(date_to!="")&&(persons!="")&&(type!="")) {

			$j.ajax({

				url: "/admin/handler/send-order-request.handler.php",
				type: "POST",

				data: ({
					name		: name,
					phone		: phone,
					email		: email,
					date_from	: date_from,
					date_to		: date_to,
					persons		: persons,
					type		: type
				}),

				success: function(response){
					$j("#accepted").show().find(".center").html(response);
					$j(".controls").removeClass("control-blocked");
				}

			});
		}
		else {

			var text = "Заполните обязательные поля!";

			if (date_from=="") {
				$j($j("#date-from").addClass("error"));
				$j("#error-console1").text(text);
			}

			if (date_to=="") {
				$j($j("#date-to").addClass("error"));
				$j("#error-console1").text(text);
			}

			if (persons=="") {
				$j($j("#persons-count").addClass("error"));
				$j("#error-console1").text(text);
			}

			if (name=="") {
				$j($j("#user-name").addClass("error"));
				$j("#error-console2").text(text);
			}

			if (phone=="") {
				$j($j("#user-phone").addClass("error"));
				$j("#error-console2").text(text);
			}

			$j(".controls").removeClass("control-blocked");
		}

		return false;
	});

});
