/*console = {
	info: function(){}
};
*/

dojo.mixin(dacha, {
	loaded: {
		page: false,
		firstImage: false,
		image: []
	},
	imageLoaded: function(t, i){//alert(i);
		dacha.loaded.image.push(i);
		if(!i){
			dacha.loaded.firstImage = true;
			if(dacha.loaded.page){
				dacha.onload();
			}
		}
	},
	onload: function(){
		setTimeout(function(){
			dacha.resize();
			$('#wrap').removeClass('v-disabled');
			//$('#loading').addClass('v-disabled');
			//dojo.destroy(dojo.byId('loading'));
			$('body').removeClass('loading');
		},300);
	}
});

loadd = false;
sp = false;
dojo.addOnLoad(function(){
	//$(document).pngFix();
	//console.dir($("#scrollable"));
	//$("#scrollable").scrollable({horizontal:true});
	
	dacha.loaded.page = true;
	
	function time(){
		var d = dacha.time//new Date()
			,h = d.getHours()
			,m = d.getMinutes();
		//console.info(dojo.query('#contacts-open .time .a div'));dojo.query('#contacts-open .time .a div').forEach(function(node){dojo.addClass(node, 'grey');});
		if(h == 0){ h = 24 }
		
		h = h - 12;
		
		if(h>0){
			dojo.query('#contacts-open .time .a div').forEach(function(node){
				if(h > 0){
					dojo.addClass(node, 'grey');
					h--;
				}else{
					dojo.removeClass(node, 'grey');
				}
			});
		}else if(h<0){
			var c = dojo.query('#contacts-open .time .a div');
			if(c.length){
				dojo.query('#contacts-open .time .a div').forEach(function(node){
					dojo.addClass(node, 'grey');
				});
			}
		}
		return {d: d,m: m,h: h};
	}
	setTimeout(function(){
		time();
		setInterval(time, 3600000);
	},(61 - time().m)*1000*60);
	
	if(dojo.byId("menu-content-wrap")){
		sp = new dojox.layout.ScrollPane(
		{
			srcNodeRef:dojo.byId("menu-content-wrap"),
			autoHide: false,
			orientation: "vertical",
			style:"height:"+dojo.style(dojo.byId("menu-content-wrap"), 'height')+"px",
			id: "menu-content-wrap"
		});
	}
	if(dacha.typePage == 'text'){
		sp1 = new dojox.layout.ScrollPane(
		{
			srcNodeRef:dojo.query("#long-content .content")[0],
			autoHide: false,
			orientation: "vertical",
			style:"height:"+dojo.style(dojo.query("#long-content .content")[0], 'height')+"px",
			id: "long-c"
		});
	}
	
	dacha.isLoadedMap = false;
	
	dacha.map = function(){
	
		 var map = new YMaps.Map(YMaps.jQuery("#YMapsID-564")[0]);
		map.setCenter(new YMaps.GeoPoint(30.756394,46.447678), 14, YMaps.MapType.MAP);
		map.addControl(new YMaps.Zoom());
		
		YMaps.Styles.add("constructor#pmgnmPlacemark", {
			iconStyle : {
				href : "/i/ya.png",
				size : new YMaps.Point(40,45),
				offset: new YMaps.Point(-15,-41)
			}
		});

	   map.addOverlay(createObject("Placemark", new YMaps.GeoPoint(30.764462,46.44756), "constructor#pmgnmPlacemark", ""));
		
		function createObject (type, point, style, description) {
			var allowObjects = ["Placemark", "Polyline", "Polygon"],
				index = YMaps.jQuery.inArray( type, allowObjects),
				constructor = allowObjects[(index == -1) ? 0 : index];
				description = description || "";
			
			var object = new YMaps[constructor](point, {style: style, hasBalloon : !!description});
			object.description = description;
			
			return object;
		}
	
	};
	dacha.resize = function(){
		
		if(dojo.hasClass(dojo.body(), 'type-panorams')){return;}
		
		function b(){
		//$("#long-c").css({height: 'auto' });
			var v = $('body').height() - 25 - $('#header-content').height();//82;
			//alert(v);
			if($("#long-content .dojoxScrollPane").height() > v){
				$("#long-c").css({height: v });
				$("#long-content .bg").css({height: v }); 
				$("#long-content .dojoxScrollWrapper").css({height: v });
				dojo.addClass(dojo.query('#long-c .dojoxScrollWrapper')[0], 'big');
				//$("#long-content .bg").addClass('big');
			}else{
				$("#long-c").css({height: $("#long-content .dojoxScrollPane").height() });
				$("#long-content .bg").css({height: $("#long-c").height() + 0 });
				$("#long-content .dojoxScrollWrapper").css({height: $("#long-content .dojoxScrollPane").height() });
				dojo.removeClass(dojo.query('#long-c .dojoxScrollWrapper')[0], 'big');
				//$("#long-content .bg").removeClass('big');
			}
			if(sp1){sp1.resize();}
		}
		function a(){
		//$("#menu-content-wrap").css({height: 'auto' });
			var v = $('body').height() - 189;

			if($("#menu-content-wrap .dojoxScrollPane").height() > v){
				$("#menu-content-wrap").css({height: v});
				$("#menu-bg").css({height: v}); 
				$("#menu-content-wrap .dojoxScrollWrapper").css({height: v});
				//$("#menu .dojoxScrollHelper").css({left: $("#menu-p").width()+72-5});
			}else{
				$("#menu-content-wrap").css({height: $("#menu-content-wrap .dojoxScrollPane").height() });
				$("#menu-bg").css({height: $("#menu-content-wrap").height()+0});
				$("#menu-content-wrap .dojoxScrollWrapper").css({height: $("#menu-content-wrap .dojoxScrollPane").height() });
				//$("#menu .dojoxScrollHelper").css({left: $("#menu-p").width()+72-5});
			}
			if(sp){sp.resize();}
		}
		//if(loadd){
		//	setTimeout(a,10);
		//}else{
			a();
			if(dacha.typePage == 'text'){b()}
		//}
		$("#pattern").css({height: $('body').height(), width: $('body').width() });
		if($('body').height()/$('body').width()>$("#stretcher img").height()/$("#stretcher img").width()){
			$("#stretcher").addClass("h");
			$("#stretcher img").css({height: $('body').height(), width: "auto" });
			
			$("#pattern").css({height: $('body').height(), width: $('body').width() });
			var top = ($('body').height() - $("#stretcher img").height())/2;
			$("#stretcher .ps-pic").css(
			{
				left: String(($('body').width() - $("#stretcher img").width())/2)+'px',
				top: (top<0?String(top):'0')+'px'
			});
			
		}else{
			$("#stretcher").removeClass("h");
			var w = $("#stretcher img").width();
			var l = $("#stretcher .ps-screen").offset().left;
			$("#stretcher img").css({width: $('body').width(), height: "auto" });
			//console.info($("#stretcher .ps-screen").offset().left,$(document).width(),w);
			var top = ($('body').height() - $("#stretcher img").height())/2;
			$("#stretcher .ps-pic").css(
			{
				//left: l ? l + (w - $(document).width()) : l,
				top: +(top<0?String(top):'0')+'px',
				left: 0
			});
		}
	}
	
	if(dacha.typePage == 'gallery' && $("#stretcher img").length > 1){
		var active = String(document.location.hash).slice(2);
		var item = $('#scrollable [imageName="'+active+'"]');//console.info($('img',item));
		//$('meta[property="og:image"]').attr({content: $('img',item).attr('src')});
		//$('meta[property="og:title"]').attr({content: $('img',item).attr('alt')});
		//$('meta[property="og:url"]').attr({content: document.location});
			if(!item.length){
				active = 0;
			}else{
				active = $('#scrollable .items a').index(item);
			}
		$('#gallery-nav').removeClass('v-disabled');
		$("#scrollable").scrollable({horizontal:true,active: active, onSeek: function(o){
			
		}});
	}else if(dacha.typePage == 'gallery' && $("#stretcher img").length == 1){
		dojo.addClass(dojo.query("#stretcher img")[0], 'active');
		$('#scrollable').addClass('dis');
		//$('#scrollable td.prev').add('#scrollable td.next').addClass('dis');
		//$('#scrollable .list a').addClass('active');
		//$('#gallery-nav').addClass('dis');
		if($('#scrollable img').eq(0).attr('alt')){
			$('#gallery-comment-bg').removeClass('v-disabled');
			$('#gallery-comment').removeClass('v-disabled').html($('#scrollable img').eq(0).attr('alt'));
		}
		
	}else if(dacha.typePage != 'gallery'){
		var q = dojo.query("#stretcher img");
		if(q.length){
			dojo.addClass(q[0], 'active');
		}
	}
	if(dacha.typePage == 'main' && $("#stretcher img").length > 1){
		
		setInterval(function(){
			var n1,n,i = 0;
			var q = dojo.query("#stretcher img");
			q.forEach(function(node,k){
				if(dojo.hasClass(node, 'active')){
					i = k;
					n1=k;
					if(i<(q.length-1)){
						n=i+1;
					}else{
						n=0;
					}
					return;
				}
			});
			/*
			dojo.fadeOut({ node:n1,
				duration: 2000,
				onEnd:function(){
					dojo.removeClass(n1, 'active');
				}
			}).play();
			
			dojo.style(n, opacity, '1');
			dojo.addClass(n, 'active');
			dojo.fadeIn({
				node:n,
				duration: 2000
			}).play();
			*/

			$('#stretcher img').eq(n1).fadeOut(1000, function(){
				//console.info($(this).attr('alt'));
				$(this).removeClass('active');
				
				//$('#stretcher img').eq(index).fadeIn('slow', function(){$(this).addClass('active')});
			});
			$('#stretcher img').eq(n).fadeIn(1000, function(){
				//$('#gallery-comment').html($(this).attr('alt'));
				$(this).addClass('active');
			});
			
			
		}, 8000);
	}
	dacha.resize();
	
	if(dacha.loaded.firstImage || !dojo.query('#stretcher img').length){
		$('#wrap').removeClass('v-disabled');
		//$('#loading').addClass('v-disabled');
		//dojo.destroy(dojo.byId('loading'));
		$('body').removeClass('loading');
	}

	loadd = true;
	
	$(window).bind("resize", dacha.resize);
	function isCookie(c){
		return typeof dojo.cookie(c) != 'undefined';
	}
	if(isCookie("search")){
		$("#search").addClass("open").css({ bottom: 0 });
	}
	if(isCookie("copyright")){
		$("#copyright").css({ bottom: 0 }).addClass("open");
	}
	if(isCookie("contacts")){
		$("#contacts-open").toggleClass("disabled");
		$("#contacts").toggleClass("disabled");
		
		dacha.isLoadedMap = true;
		dacha.map();
	}
	if(!isCookie("banner") || Number(dojo.cookie("banner"))){
		$("#banner-bg").toggleClass("v-disabled");
		$("#banner").toggleClass("v-disabled");
		$("#banner-butt").toggleClass("v-disabled")
	}
	if(isCookie("menu")){
		$("#menu-butt-wrap").removeClass("open");
		$("#menu").removeClass("disabled");
	}
	if(!isCookie("events") || Number(dojo.cookie("events"))){
		$("#events-wr").addClass("disabled");
		$("#events-open-wr").css({ top: 0 });
	}
	var events = {
		open: function(){
			$("#events-wr").toggleClass("disabled");
			$("#events-open-wr").animate({ top: 0 }, 'slow', function(){
				//$("#events-open-wr").toggleClass("disabled");
				dojo.cookie("events", 1, { expires: 10,path: '/' });
			});
		},
		close: function(){
			$("#events-open-wr").animate({ top: -466 }, 'slow', function(){
				$("#events-wr").toggleClass("disabled");
				dojo.cookie("events", 0, { expires: 10,path: '/' });
				//$(this).toggleClass("disabled");
			});
		}
	};
	
	
	/* $("#gallery-nav div").hover(
			function() {
				$(this).addClass("active");
			},
			function() {
				$(this).removeClass("active");
			}
	); */
	$("span.items a").hover(
			function() {
				$(this).addClass("hover");
			},
			function() {
				$(this).removeClass("hover");
			}
	);
	
	$("#gallery-nav>div").hover(
			function() {
				$(this).addClass("active");
			},
			function() {
				$(this).removeClass("active");
			}
	);
	
	/* $(".admin-butt").hover(
			function() {
				$(this).addClass("adm-hover");
			},
			function() {
				$(this).removeClass("adm-hover");
			}
	); */
	if(dojo.isIE==6){
		$("#gallery-nav .prev").click(function(){
			dacha.gallery.prevSlide()
		});
		$("#gallery-nav .next").click(function(){
			dacha.gallery.nextSlide()
		});
	}
	$("#events a").click(events.open);
	$("#events button").click(events.open);
	
	$("#events-open a.view").click(events.close);
	$("#events-open button").click(events.close);
	$("#events-open .content-wr a").click(function(){
		//$("#events-open-wr").css({ top: -466 });
		//$("#events-wr").toggleClass("disabled");
		dojo.cookie("events", 0, { expires: 10,path: '/' });
		//$(this).toggleClass("disabled");
	});
	
	$("#menu-butt").click(function(){
		var state = $("#menu-butt-wrap").hasClass("open");
		$("#menu-butt-wrap").toggleClass("open");
		//var w = $("#menu").width();v
		$("#menu").toggleClass("disabled");
		var c = Number(!$("#menu").hasClass("disabled"));
		dojo.cookie("menu", c, { expires: c?10:-10,path: '/' });
		if(state){
			//$("#menu").css({left: -$("#menu").width()}).animate({ left: 0,top: 131 }, 'fast');
		}else{
			//$(this).toggleClass("disabled");
		}
		
	});
	
	$("#banner-bg button").click(function(){
		$("#banner-bg").toggleClass("v-disabled");
		//$("#banner-butt").toggleClass("v-disabled");
		dojo.cookie("banner", 1, { expires: 10,path: '/' });
		//var w = $("body").width();
		if(!dojo.isOpera){
			$("#banner").css({bottom: 31}).toggleClass("v-disabled").animate({ bottom: 41 }, 'fast');
			$("#banner-butt").css({bottom: 199}).toggleClass("v-disabled").animate({ bottom: 209 }, 'fast');
		}else{
			$("#banner").toggleClass("v-disabled");
			$("#banner-butt").toggleClass("v-disabled");
		}
	});
	$("#banner-butt").click(function(){
		
		dojo.cookie("banner", 0, { expires: 10,path: '/' });
		//var w = $("body").width();
		if(!dojo.isOpera){
			$("#banner").animate({ bottom: 31 }, 'fast', function(){
				$(this).toggleClass("v-disabled");
				//$("#banner-bg").toggleClass("v-disabled");
				//$("#banner-butt").toggleClass("v-disabled");
			});
			$("#banner-butt").animate({ bottom: 199 }, 'fast', function(){
				$(this).toggleClass("v-disabled");
				$("#banner-bg").toggleClass("v-disabled");
				//$(this).toggleClass("v-disabled");
			});
		}else{
			$("#banner").toggleClass("v-disabled");
			$("#banner-bg").toggleClass("v-disabled");
			$("#banner-butt").toggleClass("v-disabled");
		}
	});
	
	if(isCookie("help")){
		$("#help").addClass("disabled");
		$("#help-butt").addClass("disabled");
		$("#help-toggle").addClass("hide");
		$("#help-toggle button").attr("title", $("#help-toggle button").attr("data-title-hide"));
		$("#help-toggle button").text($("#help-toggle button").attr("data-title-hide"));
	}
	/* $("#help-butt").click(function(){
		$("#help").addClass("disabled");
		$(this).addClass("disabled");
		$("#help-toggle").addClass("hide");
		$("#help-toggle button").attr("title", $("#help-toggle button").attr("data-title-hide"));
		$("#help-toggle button").text($("#help-toggle button").attr("data-title-hide"));
		dojo.cookie("help", 1, { expires: 10,path: '/' });
	}); */
	
	$("#help-toggle button").click(function(){
		var state = $("#help").hasClass("disabled");
		
		$("#help").toggleClass("disabled");
		$("#help-butt").toggleClass("disabled");
		$("#help-toggle").toggleClass("hide");
		$("#help-toggle button").attr("title", $("#help-toggle button").attr("data-title-"+(state?'show':'hide')));
		$("#help-toggle button").text($("#help-toggle button").attr("data-title-"+(state?'show':'hide')));
		var c = Number($("#help").hasClass("disabled"));//console.info(c);
		dojo.cookie("help", c, { expires: c?10:-10,path: '/' });
	});
	
	$("#menu-contacts").click(function(){
		$("#contacts-open").toggleClass("disabled");
		$("#contacts").toggleClass("disabled");
		dojo.cookie("contacts", dojo.cookie("contacts")?0:1, { expires: 10,path: '/' });
		
		if(!dacha.isLoadedMap){
			dacha.isLoadedMap = true;
			dacha.map();
		}
	});
	
	$("#contacts button").click(function(){
		$("#contacts-open").toggleClass("disabled");
		$("#contacts").toggleClass("disabled");
		dojo.cookie("contacts", 1, { expires: 10,path: '/' });
		if(!dacha.isLoadedMap){
			dacha.isLoadedMap = true;
			dacha.map();
		}
	});
	$("#contacts-open button").click(function(){
		$("#contacts-open").toggleClass("disabled");
		$("#contacts").toggleClass("disabled");
		dojo.cookie("contacts", 0, { expires: -10,path: '/' });
	});
	
	var f = function(){
		var state = $("#copyright").hasClass("open");
		$("#copyright").toggleClass("open")[dojo.isOpera?'css':'animate']({ bottom: state?-70:0 }, 'slow');

		
		var c = Number($("#copyright").hasClass("open"));
		dojo.cookie("copyright", c, { expires: c?10:-10,path: '/' });
	};
	
	$("#copyright button").click(f);
	$("#copyright .view").click(f);
	$("#menu-copyright").click(f);
	
	$("#search .toggle").add($("#menu-search")).click(function(){
		var state = $("#search").hasClass("open");
		$("#search").toggleClass("open")[dojo.isOpera?'css':'animate']({ bottom: state?-39:0 }, 'slow');

		
		var c = Number($("#search").hasClass("open"));
		dojo.cookie("search", c, { expires: c?10:-10,path: '/' });
	});
	
	
	$("#menu a").click(function(){
		$("#menu-butt-wrap").addClass("open");
		$("#menu").addClass("disabled");
		dojo.cookie("menu", 0, { expires: -10,path: '/' });
	});
	$("#banner a").click(function(){
		dojo.cookie("banner", 0, { expires: -10,path: '/' });
	});
	$("#events-open .content-wr a").click(function(){
		dojo.cookie("events", 0, { expires: 10,path: '/' });
	});
	
	if(dijit.byId('admin')){
		dojo.connect(dojo.isIE?dojo.body():window,dojo.isWebKit?'keyup':'keypress',function(e){
			e = dojo.fixEvent(e);
			if(e.keyCode==13 && e.ctrlKey){
				dijit.byId('admin').show();
			}
		});
	}
	
	dacha.admin = function(t){
		var td = dojo.xhrPost({
			url: dacha.domain+'admin/login',
			sync: true,
			handleAs:"json",
			form: t.form,
			content: {
				lang: dacha.lang
			}
		});
		
		td.addCallback(function(resp){
			if(resp.res){
				//document.location.hash = '';
				//document.location = document.location;
				document.location.reload();
			}else{
				dojo.query('#admin .err')[0].innerHTML = resp.errors[0];
			}
		});
	};
	
	dacha._edit = function(t){
		//console.info(dijit.byId('dlg').containerNode.firstChild);
		//dojodijit.byId('dlg').containerNode.firstChild.src = t.href;
		dojo.byId('dlg-iframe').src = t.href;
		dijit.byId('dlg').show();
	};
	
	dacha.del = function(url,t,b){
		if(confirm(dacha.nls.del+'?')){

			var td = dojo.xhrGet({
				url: url,
				sync: true,
				handleAs:"json",
				content: {}
			});
			
			td.addCallback(function(resp){
				if(resp.res){
					if(dojo.hasClass(t.parentNode,'del-block')){
						dojo.destroy(t.parentNode.parentNode);
					}else{
						document.location = dacha.domain+dacha.lang;
					}
				}
			});
		};
	};
	dacha._go = function(t){
		t.form.submit();
		//console.info(t);
	};
	
	dacha.valid = {
		'name': function(){
			var n = dojo.byId('name');
				if(!n){return true;}
			var v = dojo.trim(n.value);
			if(v==''){
				dojo.addClass(n, 'error');
				dojo.query('#err-name')[0].innerHTML = dacha.nls['valid'];
				dojo.query('#err-name').removeClass('dis');
				return false;
			}
			dojo.query('#err-name').addClass('dis');
			dojo.removeClass(n, 'error');
			return true;
		}
		,'email': function(){
			var n = dojo.byId('email');
				if(!n){return true;}
			var v = dojo.trim(n.value);
			if(v==''){
				dojo.addClass(n, 'error');
				dojo.query('#err-email')[0].innerHTML = dacha.nls['valid'];
				dojo.query('#err-email').removeClass('dis');
				return false;
			}
			dojo.query('#err-email').addClass('dis');
			dojo.removeClass(n, 'error');
			return true;
		}
	};
	dacha.validate = function(){
		var b = true;
		for(var i in dacha.valid){
			if(!dacha.valid[i]()){
				b = false;
			}
		}
		return b;
	};
	dacha.library = {
		state: false,
		path: {
			
		}
	};
	dacha.open = function(t,src){
			if(dacha.library.state!=src){
				dacha.library.state=src;
				dojo.attr(dojo.query('#dlg iframe')[0], 'src', src);
			}
			dijit.byId('dlg').show();
	};
	
	/*
	YMaps.jQuery(function () {
		var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
		map.setCenter(new YMaps.GeoPoint(30.766751, 46.444119), 10);
	})
	*/
});
