var deferred = Array();
function do_deferred(){
	for(i=0; i<deferred.length; i++){
		eval(deferred[i]);
	}
}
function defer(cmd){
	deferred.push(cmd);
}


function set_lang(lang){
	$('lang_form_lang').value = lang;
	$('lang_form').submit();
}

function edit_language(obj, id){
	if(id){
		parent = obj.parentNode;
		field = $('edit_language_field');

		field.type = 'text';
		field.setStyle({
			width: obj.getWidth() + 'px',
			height: obj.getHeight() + 'px',
			left: parent.offsetLeft + 'px',
			top: parent.offsetTop + 'px'
		});
		field.value = obj.innerHTML;
		$('edit_language_id').value = id;
		field.focus();
	}
}

function edit_data(obj, language_id, string_id){
	if(language_id && string_id){
		parent = obj.parentNode;
		field = $('edit_data_field');

		field.type = 'text';
		field.setStyle({
			width: obj.getWidth() + 'px',
			height: obj.getHeight() - 2 + 'px',
			left: obj.offsetLeft + 'px',
			top: obj.offsetTop + 'px'
		});
		field.value = obj.innerHTML;
		$('edit_language_id').value = language_id;
		$('edit_string_id').value = string_id;
		field.focus();
	}
}


//Nzo

function callme_load(lang){
	if($('callme_flash')){

		//V3 Zingaya Widget
		if(lang == 'en'){
			var flash = "http://zingaya.com/callme.swf?callme_id=87c7dc152a08a7df53625e43af796fc9";
		}else{
			var flash = "http://zingaya.com/callme.swf?callme_id=f32f7d52d17809878240b2c353c31454";
		}
		var flashvars = {};
		var params = {
			menu: "false",
			wmode: "transparent"
		};
		var attributes = {};
		swfobject.embedSWF(flash, "callme_flash", "240", "140", "9.0.0", "expressInstall.swf", flashvars, params, attributes);
	}

	window.onbeforeunload = unload;

}
function unload(e){
//	ShowProps(e);
//	event.stop();
//	if(event.preventDefault)
//		event.preventDefault();

	if(document.all){
		event.returnValue = nzo_leave_alert_text;
	}else{
		e.returnValue = nzo_leave_alert_text;
	}
	return nzo_leave_alert_text;
}
function ShowProps(obj, str){
	var output='';
	for(var i in obj){
		if(str){
			if(i.include(str)){
				output += i + '=' + obj[i] + '<br>\n';
			}
		}else if(!is_function(obj[i]) && i != 'innerHTML'){
			output += i + '=' + obj[i] + '<br>\n';
		}
	}
	document.write(output);
}

function nzo_show(){
//Старое
	$('cc').style.overflow = 'hidden';
	$('nzo_overlay').show();
}
function nzo_hide(){
	if(confirm(nzo_hide_alert_text)){
		window.onbeforeunload = null;
		$('nzo_overlay').hide();
		$('cc').style.overflow = '';
	}
}
function nzo_step(num){
//	$('nzo_step'+num).show();
	Effect.BlindUp('nzo_step' + (num - 1), {'duration': '0.5'});
	Effect.BlindDown('nzo_step' + num, {'duration': '0.5'});
	$('nzo_step'+num+'_num').src='/i/ico_step'+num+'_num_active.png';
	$('nzo_step'+(num-1)+'_num').src='/i/ico_step'+(num-1)+'_num_done.png';
//	$('nzo_step'+(num-1)).hide();
//	if(num==3){
//		$('nzo_bottom').hide();
//	}
}


//Gallery
document.gallery_scrollto = 0
iw = 106; //Image width
function gallery_left(){
	left = $('photos_list').offsetLeft;
	if(document.gallery_scrollto < 0){
		document.gallery_scrollto = document.gallery_scrollto + iw;
		gallery_loop();
	}
}
function gallery_right(){
	left = $('photos_list').offsetLeft;
	w = $('photos_list_table').getWidth();
	if(document.gallery_scrollto > -(w - (3 * iw))){
		document.gallery_scrollto = document.gallery_scrollto - iw;
		gallery_loop();
	}
}

function gallery_loop(){
	to = document.gallery_scrollto;
	now = $('photos_list').offsetLeft;
	if(to > now){
		next = now + Math.max( ((to - now) / 4), 1);
	}else{
		next = now - Math.max( ((now - to) / 4), 1);
	}
	$('photos_list').style.left = Math.floor(next) + 'px';
	if(next != to){
		setTimeout('gallery_loop()', 50);
	}
}

function show_photo(pic, num){
	$('photo').src = '/get.php?filename=' + pic;

	pic_left = num * iw;

	w = $('photos_list_table').getWidth();

	next = -pic_left + iw;

	if(pic_left >= iw && pic_left < w - iw && next != $('photos_list').offsetLeft){
		document.gallery_scrollto = next;
		gallery_loop();
	}
}

//Gallery V3
function init_gallery_v3(suffix){

	if(suffix){
		id = 'photos_list_' + suffix;
	}else{
		id = 'photos_list';
	}
if($(id)){
	$(id).gallery_c = 0;
	$(id).gallery_p = 0;
	$(id).gallery_i = $$('#' + id + ' .gallery_item');
	$(id).gallery_in = $(id).gallery_i.length;
	$(id).gallery_iw = $(id).gallery_i[0].getWidth();

	$(id).setStyle({'width': $(id).gallery_in*($(id).gallery_iw + 5) + 'px'});
	if($(id).gallery_in == 2){
		$(id).setStyle({'left': '86px'});
		x = 86;
	}else{
		x = 0;
	}
	if($(id).gallery_e){
		$(id).gallery_e.cancel();
	}
	$(id).gallery_e = new Effect.Move(id, {mode: "absolute", x: x, y: 0, duration:1});
}
}

function gallery_scroll_v3(dir, suffix){

	if(suffix){
		id = 'photos_list_' + suffix;
		left_arr = 'photos_left_arrow_' + suffix;
		right_arr = 'photos_right_arrow_' + suffix;
	}else{
		id = 'photos_list';
		left_arr = 'photos_left_arrow';
		right_arr = 'photos_right_arrow';
	}

	switch(dir){
		case 'left':
		if($(id).gallery_c>0){
			$(id).gallery_c--;
		}
		break;
		case 'right':
		if($(id).gallery_c<($(id).gallery_in-3)){
			$(id).gallery_c++;
		}
		break;
		default:
		break;
	}

	if($(left_arr) && $(right_arr)){
		if($(id).gallery_c == 0){
			$(left_arr).addClassName('inactive');
		}else{
			$(left_arr).removeClassName('inactive');
		}
		if($(id).gallery_c >= $(id).gallery_in-3){
			$(right_arr).addClassName('inactive');
		}else{
			$(right_arr).removeClassName('inactive');
		}
	}


	if($(id).gallery_e){
		$(id).gallery_e.cancel();
	}

	$(id).gallery_e = new Effect.Move(id, {mode:'absolute', x:-$('gallery_item_'+$(id).gallery_c).offsetLeft, duration:0.5});
}

function gallery_show_v3(picture, num, suffix){

	if(suffix){
		id = 'photos_list_' + suffix;
	}else{
		id = 'photos_list';
	}

	if($(id).gallery_p != num){
		if($(id).gallery_in != 2){
			if($(id).gallery_c == num){
				gallery_scroll_v3('left', suffix);
			}else if($(id).gallery_c+2 == num){
				gallery_scroll_v3('right', suffix);
			}
		}

		//new Effect.Opacity('gallery_photo', { from: 1, to: 0, duration: 0.1 });
		//mb change to smth
		$('gallery_photo').setStyle({opacity: '0'});

		pic = '/get.php?filename=' + picture;
		var imgPreloader = new Image();
		imgPreloader.onload = (function(){
			$('gallery_photo').src = pic;
			new Effect.Opacity('gallery_photo', { from: 0, to: 1, duration: 0.3, queue: 'end'});
		}).bind(this);
		imgPreloader.src = pic;

		$(id).gallery_p = num;
	}
}


//Функция для формы бронирования отеля
function setTodayDate_proto(){
	var d = new Date();
	var dtIn = $('dtIn');
	if (dtIn.length == 0)
		return;
	d.setDate(d.getDate() + 1);
	dtIn.options.selectedIndex = d.getDate() - 1;
	$('mnIn').options.selectedIndex = d.getMonth();
	var dtOut = $('dtOut');
	if(dtOut){
		if (dtOut.length != 0){
			d.setDate(d.getDate() + 1);
			dtOut.options.selectedIndex = d.getDate() - 1;
			$('mnOut').options.selectedIndex = d.getMonth();
		}
	}
}

//Выбор звёздности в форме поиска отелей
function bookhotels_search_select_star(num){
	if(!(num>=0 && num<=5)){
		return false;
	}

	$('bookhotels_search_form_stars').value = num;
	bookhotels_search_stars_highlight(num);

	if(num == 0){
		$('bookhotels_search_star_no').style.visibility = 'hidden';
	}else{
		$('bookhotels_search_star_no').style.visibility = 'visible';
	}
}
//Подсветка звёзд в форме поиска отелей
function bookhotels_search_stars_highlight(num){
	if(!(num>=0 && num<=5)){
		return false;
	}
	if(num == 0){
		for(i=1; i<=5; i++){
			$('bookhotels_search_star_' + i).src = '/i/gray_star_big.png';
		}
	}else{
		for(i=1; i<=5; i++){
			if(i <= num){
				$('bookhotels_search_star_' + i).src = '/i/yellow_star_big.png';
			}else{
				$('bookhotels_search_star_' + i).src = '/i/blue_star_big.png';
			}
		}
	}
}


//Функция отображения праздника
function show_holiday(id){
	new Effect.Move('holidays_list', {x: -$('holiday_' + id).offsetLeft, mode: 'absolute', duration: 0.5});
	new Effect.ScrollTo('holidays');
}

function sleep(num){
	var sleeping = true;
	var now = new Date();
	var alarm;
	var startingSeconds = now.getTime();
	while(sleeping){
		alarm = new Date();
		alarmSeconds = alarm.getTime();
		if(alarmSeconds - startingSeconds > 1000*num){
			sleeping = false;
		}
	}
}

function select_city(){

	var flash = "/swf/clock.swf";
	var flashvars = {
		tz: $F('clock_city_selected')
	};
	var params = {
		menu: "false",
		wmode: "transparent"
	};
	var attributes = {};
	swfobject.embedSWF(flash, "clock_city", "75", "75", "9.0.0", "/swf/expressInstall.swf", flashvars, params, attributes);

}

function events_main_select(selection){
	$$('DIV.events_main').invoke('hide');
	$$('DIV.events_main_select').invoke('setStyle', {'fontWeight': 'normal'});


	$('events_' + selection + '_event').appear({'duration': '0.2'});
	$('event_select_' + selection).setStyle({'fontWeight': 'bold'});
}

function events_recommended_select(id){
	$$('DIV.events_recommended').invoke('hide');

	$('events_recommended_' + id).appear({'duration': '0.2'});
}
function events_week_select(id){
	$$('DIV.events_week').invoke('hide');

	$('events_week_' + id).appear({'duration': '0.2'});
}

function select_city_v3(){

	var flash = "/swf/clock_v3.swf";
	var flashvars = {
		tz: $F('clock_city_selected')
	};
	var params = {
		menu: "false",
		wmode: "transparent"
	};
	var attributes = {};
	swfobject.embedSWF(flash, "clock_city", "100", "120", "9.0.0", "/swf/expressInstall.swf", flashvars, params, attributes);

}

function navigation_hover(obj, out){
	if(obj.move){obj.move.cancel();}
	if(!out){
		obj.move = new Effect.Morph(obj, {style: 'width: 54px', duration: 0.2});
	}else{
		obj.move = new Effect.Morph(obj, {style: 'width: 15px', duration: 0.8});
	}
}

function show_help(text, event, classname){
	var help = new Element("div");
	help.addClassName("help_block");
	if(classname){
		help.addClassName(classname);
	}
	help.id = "help_block";
	help.innerHTML = text;
	help.style.left = event.target.cumulativeOffset().left + "px";
	help.style.top = event.target.cumulativeOffset().top + "px";
	help.observe("mouseout", hide_help);
	document.body.appendChild(help);
}

function hide_help(){
	if($('help_block')){
		document.body.removeChild($('help_block'));
	}
}

