//	Набор скриптов для сайта
//	
//	Использует:
//	jquery.js
//
////////////////////////////////////////////////

// jQuery.noConflict();

(function($) {

	function InitSite()
	{
		InitMenu();
	//	InitCorners();
		InitLightBox();
		InitFlash();
		InitMap();
		InitGenPlan();
		InitSubscribe();
		InitPassportForm();
		InitPictures();
		InitOrderHouse();
	}
	
	function InitMenu()
	{
		if( $("#MenuBox").length > 0 )
		{
			$("#MenuBox").after('<div id="MenuShadow"></div>');
			$("#MenuBox a:last").addClass("Last");
			
			$("#MenuShadow").css({
				height:	$("#MenuBox").height() - 14 + "px"
			}).fadeTo(1, 0.2);
		}
	}

	function InitCorners()
	{
		if( $("#TopImage").length > 0 )
			$("#TopImage").corners("10px");
		if( $("#MenuBox").length > 0 )
			$("#MenuBox").corners("10px");
		if( $("#MenuShadow").length > 0 )
			$("#MenuShadow").corners("10px");
		if( $(".Banner").length > 0 )
		{
			$(".Banner img").corners("10px");
			$(".Banner span").corners("10px top-left 10px bottom-right");
		}
		if( $(".FeautersPic").length > 0 )
			$(".FeautersPic").corners("10px");
	}
	
	function InitLightBox()
	{
		$("#PhotoGallery a").lightBox();
	}
	
	function InitFlash()
	{
		if( $("#GenplanBanner").length > 0 )
		{
			$('#GenplanBanner').flash({
				src: '/fla/banner2.swf',
				width: 250,
				height: 150,
				wmode: "opaque"
			});
		}
		
		if( $("#GenplanBannerEn").length > 0 )
		{
			$('#GenplanBannerEn').flash({
				src: '/fla/banner_en.swf',
				width: 250,
				height: 150,
				wmode: "opaque"
			});
		}

		if( $("#GenplanBannerNoLink").length > 0 )
		{
			$('#GenplanBannerNoLink').flash({
				src: '/fla/banner_nolink.swf',
				width: 250,
				height: 150,
				wmode: "opaque"
			});
		}

		if( $("#GenplanBannerEnNoLink").length > 0 )
		{
			$('#GenplanBannerEnNoLink').flash({
				src: '/fla/banner_en_nolink.swf',
				width: 250,
				height: 150,
				wmode: "opaque"
			});
		}

		if( $("#TopFlash").length > 0 )
		{
			$("#TopFlash").flash({
				src:	'/fla/top.swf',
				width:	'100%',
				height:	230,
				wmode: "opaque",
				scale: "noscale"
			});
		}
	}
	
	function InitMap()
	{
		if( $("#gMap").length > 0 )
		{
			InitializeMap();
		}
	}

	function InitGenPlan()
	{
		if( $("#Phases").length > 0 && $("#Phase1").length > 0 )
		{
			var iPhase;
			var oPlot;

			$("#Phase1Link").mouseover(function(){ $("#Phase1Over").fadeIn("fast"); });
			$("#Phase1Link").mouseout(function(){ $("#Phase1Over").fadeOut("fast"); });
			
			$("#Phase1Link").click(
				function(){
					if( jQuery.browser.msie )
					{
						if ( jQuery.browser.version == "6.0" )
							var iTop = ($("body:eq(0)").height() - 1100) / 2;
						else
							var iTop = ($("body:eq(0)").height() - 695) / 2;
					} else {
						var iTop = ($("body:eq(0)").height() - 695) / 2;
					}
					$("#PageShade").fadeTo(1, 0.7);
					$("#PageShade").css({
						height: $(document).height() + "px",
						width:	$(document).width() + "px"
					}).show();
					$("#Phase1").css("top", $(document).scrollTop() + parseInt(iTop) + "px").fadeIn("fast");
					iPhase = 1;
				}
			);
			$(".CloseLayer").click(function(){
				$(this).parent().parent().fadeOut("fast");
				$("#PageShade").hide();
			});
			
			$("#CloseOrder").click(function(){
				$("#PlotLayer").fadeOut("fast");
				$("#OrderBox").hide();
				$("#ReservBox").hide();
				$("#SoldBox").hide();
				$(".OrderTable").show();
				$("#OrderOK").hide();
				$("#AjaxIcon").hide();
				$("#OrderForm input[type='text']").val("");
			});
			
			$(".PlotSelectors li").click(function(){
				var iTop	= $(this).offset().top + 6;
				var iLeft	= $(this).offset().left - 104;
				
				CheckForm();
				
				if( $(this).attr("class") == "Active" )
				{
					oPlot = $(this);
					$("#OrderBox").show();
					$("#PhaseNumber").html( iPhase );
					$("#PlotNumber").html( $(this).attr("title") );
					$("#PlotSize").html( $(this).attr("size") );
					$("#PlotPrice").html( $(this).attr("price") );
					$("#RubPrice").html( $(this).attr("pricerub") );
					$("#PlotNum").val($(this).attr("title"));
				}
				if( $(this).attr("class") == "Reserved" )
				{
					$("#PhaseNumber").html( iPhase );
					$("#PlotNumber").html( $(this).attr("title") );
					$("#ReservBox").show();
				}
				
				if( $(this).attr("class") == "Sold" )
				{
					$("#PhaseNumber").html( iPhase );
					$("#PlotNumber").html( $(this).attr("title") );
					$("#SoldBox").show();
				}
				
				$("#PlotLayer").fadeIn("fast").css({
					top:	iTop,
					left:	iLeft
				});
			});
			
			bOrder	= false;
			$("#OrderForm input[type='text']").keyup(function(){ CheckForm(); });

			function CheckForm()
			{
				if( $("#OrderForm input:eq(1)").val() !== "" && $("#OrderForm input:eq(2)").val() )
				{
					$("#OrderForm input[type='submit']").removeAttr("disabled");
					bOrder	= true;
				} else {	
					bOrder	= false;
					$("#OrderForm input[type='submit']").attr("disabled", "disabled");
				}
			}
			
			
			$("#OrderForm").submit(function(){
				if( bOrder )
				{
					$("#OrderForm").addClass("DisabledForm");
					$("#OrderForm input").attr("disabled", "disabled");
					$("#AjaxIcon").show();
	
					$.post("/assets/snippets/orderplot/order.php",{
						PlotNumber:		$("#PlotNum").val(),
						Name:			$(".OrderTable input:eq(0)").val(),
						Phone:			$(".OrderTable input:eq(1)").val(),
						Email:			$(".OrderTable input:eq(2)").val()
					},
					function(){
						$(".OrderTable").hide();
						$("#OrderOK").fadeIn("fast");
						$("#OrderForm").removeClass("DisabledForm");
						$(".OrderTable input:eq(0)").val("");
						$(".OrderTable input:eq(1)").val("");
						$(".OrderTable input:eq(2)").val("");
						$("#OrderForm input").removeAttr("disabled");
						$(oPlot).removeClass("Active").addClass("Reserved");
					});
				}

				return false;
			});
		}
	}

	function CheckValidEmail(email)
	{
		return (/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i).test(email);
	}
	
	function InitSubscribe()
	{
		$("#Subscribe").submit(function(){
			if(CheckValidEmail($(".MailField").val()))
			{
				$.post("/", {email: $(".MailField").val()}, function(){
					$("#SubscribeFields").fadeOut("fast", function(){ $("#SubscribeSuccess").fadeIn("Fast"); });
				});
			} else {
				alert("Вы ввели некорректный адрес");
			}
			
			return false;
		});
	}
	
	function CheckPassportForm()
	{
		var check = false;
		
		if(
			$("#PassportForm input[name='name']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='birthdate']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_serie']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_number']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_vidan']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_date']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_code']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_address']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_phone']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_address']:eq(0)").val() !== "" &&
			$("#PassportForm input[name='passport_mail']:eq(0)").val() !== ""
		)
		{
			check = true;
			$("#PassportForm input[type='submit']").removeAttr("disabled");
		} else {
			check = false;
			$("#PassportForm input[type='submit']").attr("disabled", "disabled");
		}
		
		return check;
	}
	
	function InitPassportForm()
	{
		if($("#PassportForm").length > 0)
		{
			var	check 	= CheckPassportForm();
			var obtain	= 0;
			
			$("#PassportForm input[type='text']").keyup(function(){
				check = CheckPassportForm();
			});
			
			$("#PassportForm input[name='obtain']").change(function(){
				if($(this).val() == "1")
				{
					$("#JurSend").css("display", "inline");
					$("#ObtainPrice").fadeIn("fast");
				}
				else
				{
					$("#JurSend").css("display", "none");
					$("#ObtainPrice").fadeOut("fast");
				}

				obtain = $(this).val();
			});

			$("#PassportForm").submit(function(){
				if(check)
				{
					$("#PassportForm input[type='submit']").attr("disabled", "disabled");
					$("#PassportAjax").show();
					$.getJSON("/passport/", {
						passport:			true,
						plot_number:		$("#PlotNumber").text(),
						name:				$("#PassportForm input[name='name']:eq(0)").val(),
						birthdate:			$("#PassportForm input[name='birthdate']:eq(0)").val(),
						passport_serie:		$("#PassportForm input[name='passport_serie']:eq(0)").val(),
						passport_number:	$("#PassportForm input[name='passport_number']:eq(0)").val(),
						passport_vidan:		$("#PassportForm input[name='passport_vidan']:eq(0)").val(),
						passport_date:		$("#PassportForm input[name='passport_date']:eq(0)").val(),
						passport_code:		$("#PassportForm input[name='passport_code']:eq(0)").val(),
						passport_address:	$("#PassportForm input[name='passport_address']:eq(0)").val(),
						passport_phone:		$("#PassportForm input[name='passport_phone']:eq(0)").val(),
						passport_address:	$("#PassportForm input[name='passport_address']:eq(0)").val(),
						passport_mail:		$("#PassportForm input[name='passport_mail']:eq(0)").val(),
						obtain:				obtain
					}, function(data){
						$("#PassportForm").fadeOut("fast", function(){ $("#PassportSuccess").fadeIn("fast"); });
					});
				}
				
				return false;
			});
		}
	}
	
	function InitPictures()
	{
		if($(".PictureGal").length > 0)
		{
			$(".PictureGal li a").click(function(){
				var galbox = $(".PictureGal").index($(this).parent().parent().parent());
				
				$(".BigPic:eq("+ galbox +") img").fadeOut("fast", function(){ $(this).remove(); });
				$(".BigPic:eq("+ galbox +")").append('<img src="'+ $(this).attr("href") +'" alt="" style="display: none;" />');
				$(".BigPic:eq("+ galbox +") img").fadeIn("fast");
				
				$(".PictureGal:eq("+ galbox +") li").removeClass("current");
				$(this).parent().addClass("current");
				
				return false;
			});
		}
	}
	
	function InitOrderHouse()
	{
		if($("#order_house").length > 0)
		{
			// Двигаем по экрану форму
			var offset = $("#order_house").offset();
			var topPadding = 30;
	
			$(window).scroll(function(){
				if ($(window).scrollTop() > offset.top) {
					$("#order_house").stop().css({marginTop: $(window).scrollTop() - offset.top + topPadding});
				} else {
					$("#order_house").stop().css({marginTop: 0});
				}
			});
			
			// Заказ
			var emptyval = new Array();
			$("#order_house .textfield").each(function(){
				emptyval[$(this).attr('name')]	= new Array();
			});
			
			$("#order_house .textfield").focus(function(){
				if($(this).hasClass('empty'))
				{
					emptyval[$(this).attr('name')] = $(this).val();
					$(this).val('').removeClass('empty');
				}
			});
			
			$("#order_house .textfield").blur(function(){
				if($(this).val() == '' || $(this).val() == emptyval)
				{
					$(this).val(emptyval[$(this).attr('name')]).addClass('empty');
				}
			});
			
			// Owner - not owner
			$("#not_owner").click(function(){
				if($(this).attr("checked"))
				{
					$("#order-fields input, #order-fields select").removeAttr("disabled");
					$("#order_house input[name='kadastr']").attr("disabled", "disabled").val('');
					$("#order-fields").slideDown("fast");
				} else {
					$("#order-fields input, #order-fields select").attr("disabled", "disabled");
					$("#order_house input[name='kadastr']").removeAttr("disabled");
					$("#order-fields").slideUp("fast");
				}
			});
			
			// Check values
			var val_ok = false;
			$("#order_house input").keyup(function(){
				if($("#not_owner").attr("checked"))
				{
					for(var i = 0; i <= $("#order-fields input[type='text']").length - 1; i++)
					{
						isempty = $("#order-fields input[type='text']:eq("+ i +")").hasClass("empty");
						if($("#order-fields input[type='text']:eq("+ i +")").val() == '' || isempty)
						{
							val_ok = false;
							break;
						} else {
							val_ok = true;
						}
					}
				}
				else
				{
					if($("#order_house input[name='kadastr']").val() !== ''){ val_ok = true; }
					else { val_ok = false; }
				}
				
				if(val_ok)
				{
					$("#order_house input[type='submit']").removeAttr("disabled");
				} else {
					$("#order_house input[type='submit']").attr("disabled", "disabled");
				}
			});
			
			$("#order_house_form").submit(function(){
				$("#order_house input[type='submit']").attr("disabled", "disabled");
				$("#house_ajax").show();
				
				$.post($("#order_house_form").attr("action"), $("#order_house_form").serialize(), function(){
					$("#order_house input[type='submit']").removeAttr("disabled");
					$("#house_ajax").hide();
					$("#success").show();
				});
				
				return false;
			});
		}
	}

////////////////////////////////////////////////////////////////////////////////
	$(document).ready( function(){ InitSite(); });
})(jQuery);
