$(document).ready(function(){
	if ($.browser.msie){
		$("html").addClass("ie");
		if($.browser.version == 6){
			$("html").addClass("ie6");
		} else if($.browser.version == 7){
			$("html").addClass("ie7");
		} else if($.browser.version == 8){
			$("html").addClass("ie8");
		}
	} else if($.browser.opera){
		$("html").addClass("opera");
	} else if($.browser.mozilla){
		$("html").addClass("firefox");
	} else if($.browser.safari){
		$("html").addClass("safari");
	}
		
	resize_page();
	$(window).resize(resize_page);
		
	$.blockUI.defaults.showOverlay 	= false;
	$.blockUI.defaults.centerY 		= false;
	$.blockUI.defaults.timeout 		= 2500;
	$.blockUI.defaults.fadeIn 		= 500;
	$.blockUI.defaults.fadeOut 		= 500;
	$.blockUI.defaults.css = {
		top				: '20px',
		left			: '',
		right			: '20px',
		width			: '250px',
		padding			: '10px 15px',
		border			: '1px solid #5E5E5E',
		'font-size'		: '110%',
		'text-align'	: 'left',
		backgroundColor : '#1364D6',
		opacity			: '.85',
		filter			: 'alpha(opacity = 85)',
		color			: '#fff'
	};
	$('body').find('table').each(function(){
		if($(this).attr('border') != ''){
			//$(this).css('border', $(this).attr('border') +'px solid #000000');
			$(this).find('td').css({'border': $(this).attr('border') +'px solid #000000'});
		}
	});
});

function resize_page(){
	$('#main_cont').height('');
	if($('#main_cont').height() + 168 < $(window).height()){
		$('#main_cont').height($('#main_cont').height() + ($(window).height() - ($('#main_cont').height() + 168)));
	}
}

var closetimer		= 0;
var ddmenuitem      = 0;
function l2_menu(parent_cl, child_cl, list_item, left, top){
	if(left	== ''){	left	= $(child_cl).width(); }
	if(top	== ''){	top		= -1; }
		
	if($(child_cl) != ''){
		$(child_cl)	.css("position", "relative");
	} else {
		$(parent_cl).css("position", "relative");
	}
	$(list_item).css({"position": "absolute", "z-index": "20"});
		
			/*****     action by mouse over     *****/
		
	$(parent_cl +' '+ child_cl)
		.bind('mouseover', function(){
			if(closetimer){ window.clearTimeout(closetimer); closetimer = null; }
			if(ddmenuitem){ ddmenuitem.hide(); }
			ddmenuitem = $(this)
				.find(list_item).eq(0)
				.css({"left": left, "top": top})
				.show();
		});
			/*****     action by mouse out     *****/
			
	$(parent_cl +' '+ child_cl)
		.bind('mouseout',  function(){ closetimer = window.setTimeout(function(){ if(ddmenuitem){ ddmenuitem.fadeOut(50); } }, 200); });
		
			/*****     action by document click     *****/
		
	document.onclick = function(){ if(ddmenuitem) ddmenuitem.hide(); };
}

function setCookie(c_name,value,expiredays) {
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name + "=" + escape(value) + ((expiredays==null) ? "" : ";expires="+exdate.toGMTString() + "; path=/;");
}

function addEvent( node, evtType, func ) {
	if( node.addEventListener ) {
		node.addEventListener( evtType, func, false );
		return true;
	} else if( node.attachEvent )
		return node.attachEvent( "on" + evtType, func );
	else
		return false;
}

var old_id;
function switch_visibility(id, name_a, name_par, name_sec, s1, s2){
	if(old_id && old_id != id){
		$(name_par + old_id).css('display', 'none');
		$(name_a + old_id).text(s1);
		if(name_sec != ''){
			$(name_sec + old_id).animate({'opacity': 0.5}, 400);
		}
	}
	if($(name_par + id).css('display') == 'none'){
		$(name_a + id).text(s2);
	} else {
		$(name_a + id).text(s1);
		if(name_sec != ''){
			$(name_sec + id).animate({'opacity': 0.5}, 400);
		}
	}
	$(name_par + id).slideToggle(100);
	old_id = id;
}

function date_chk_equally(d1, d2){
	if(d1.getFullYear() == d2.getFullYear() && d1.getMonth() == d2.getMonth() && d1.getDate() == d2.getDate()){
		return 1;
	}
	return 0;
}

function date_chk_more(d1, d2){
	if(d1.getFullYear() > d2.getFullYear()){
		return 1;
	} else if(d1.getFullYear() == d2.getFullYear()){
		if(d1.getMonth() > d2.getMonth()){
			return 1;
		} else if(d1.getMonth() == d2.getMonth()){
			if(d1.getDate() > d2.getDate()){
				return 1;
			}
		}
	}
	return 0;
}

function date_chk_less(d1, d2){
	
}

function check_date_add(action){
	var d_in 		= $('#date_incal_img').val().split('.');
	var d_out 		= $('#date_outcal_img').val().split('.');
	var date_in 	= new Date(d_in[2], d_in[1]-1, d_in[0]);
	var date_out 	= new Date(d_out[2], d_out[1]-1, d_out[0]);
		
	if(date_in > date_out){
		alert('Конечная дата не может быть меньше начальной!');
		return false;
	} else if(date_in.getFullYear() == date_out.getFullYear() && date_in.getMonth() == date_out.getMonth() && date_in.getDate() == date_out.getDate()){
		alert('Конечная и начальная дата не должны быть одинаковыми!');
		return false;
	}
	var dt_out, dt_in;
	var date_i = 0;
	var date_split;
	var date_in_check 	= new Date();
	var date_out_check 	= new Date();
	var obj 			= $('#date_list').val();
	var in_last_date 	= $('#in_last_date').val();
	var out_last_date 	= $('#out_last_date').val();
	if(obj){
		jQuery.each(obj.split(';'), function(index, value){
			date_split = value.split(',');
			date_in_check 	= new Date(date_split[0].split('-')[0], date_split[0].split('-')[1]-1, date_split[0].split('-')[2]);
			date_out_check	= new Date(date_split[1].split('-')[0], date_split[1].split('-')[1]-1, date_split[1].split('-')[2]);
			dt_out = d_out[2] +'-'+ d_out[1] +'-'+ d_out[0];
			dt_in = d_in[2] +'-'+ d_in[1] +'-'+ d_in[0];
			/*
			if(date_chk_more(date_in, date_in_check || date_chk_more(date_out_check, date_out))){
				date_i++;
			} else if(date_chk_more(date_out_check, date_in) || date_chk_more(date_out, date_in_check)){
				date_i++;
			}
			/*if(action != 'edit'){
				alert(date_in +' - '+ date_in_check);
				if(date_chk(date_in, date_in_check) || date_in > date_in_check){
					date_i++;
				} else if(date_chk(date_in, date_out_check) || date_in < date_out_check){
					date_i++;
				} else if(date_chk(date_out, date_in_check) || date_out > date_in_check){
					date_i++;
				} else if(date_chk(date_out, date_out_check) || date_out < date_out_check){
					date_i++;
				}
			} else {
				if(date_split[0] == in_last_date && date_split[1] == out_last_date){
					
				} else {
					if(date_in != date_in_check && date_out != date_out_check){
						if(dt_in == date_split[0] || date_in > date_in_check){
							date_i++;
						} else if(dt_in == date_split[1] || date_in < date_out_check){
							date_i++;
						} else if(dt_out == date_split[0] || date_out > date_in_check){
							date_i++;
						} else if(dt_out == date_split[1] || date_out < date_out_check){
							date_i++;
						}
					}
				}
			}*/
		});
	}
		//alert(date_i);
	if(date_i >= 2){
		alert('Введённые вами даты пересекаются с уже существующими!');
		return false;
	}
	$('#edit_date').hide();
	$('#add_date').show();
	$('#date_add_form').slideToggle(150);
		
	$.getJSON(
		add_price,
		{
			id			: $('#edit_datepr').val(),
			date_in		: $('#date_incal_img').val(),
			date_out	: $('#date_outcal_img').val(),
			action 		: action
		},
		add_price_in_list);
		
	return true;
}

function action_date(id, action, th){
	if(action == 'del'){
		if (confirm("Вы уверены что хотете удалить эту дату?")){
			$.getJSON(
				add_price,
				{
					id		: id,
					action 	: 'del_date'
				},
				add_price_in_list);
		}
	} else if(action == 'edit'){
		$('#edit_datepr').val(id);
		if($('#add_date').css('display') == 'block'){
			$('#add_date').hide();
			$('#edit_date').show();
		}
		if($('#date_add_form').css('display') == 'none'){
			$('#date_add_form').slideToggle(150);
		} else {
			$('#date_add_form').slideToggle(50).slideToggle(150);
		}
			
		var date_split 	= $('#date_'+ id).val().split(',');
		var date_ins	= date_split[0].split('-');
		var date_outs	= date_split[1].split('-');
		$('#date_outcal_dd')	.val(date_outs[2]);
		$('#date_outcal_mm')	.val(date_outs[1]);
		$('#date_outcal_yyyy')	.val(date_outs[0]);
		$('#in_last_date')		.val(date_ins[0] +'-'+ date_ins[1] +'-'+ date_ins[2]);
		$('#out_last_date')		.val(date_outs[0] +'-'+ date_outs[1] +'-'+ date_outs[2]);
		$('#date_incal_dd')		.val(date_ins[2]);
		$('#date_incal_mm')		.val(date_ins[1]);
		$('#date_incal_yyyy')	.val(date_ins[0]);
		$('#date_incal_img')
			.val(
				date_ins[2] +'.'+
				date_ins[1] +'.'+
				date_ins[0]
			);
		$('#date_outcal_img')
			.val(
				date_outs[2] +'.'+
				date_outs[1] +'.'+
				date_outs[0]
			);
	}
}

function action_list(id, action, list, irk){
	if(action == 'add_list' || action == 'edit_list'){
		var bttn;
		$('#list_price_val').val(id);
			
		if(action == 'add_list' && !irk){
			bttn = {'создать и продолжить' : 2, 'создать' : 1, 'отмена' : 0};
		}else if(irk){
			bttn = {'создать и продолжить' : 2, 'отмена' : 0};
		} else {
			bttn = {'сохранить' : 1, 'отмена' : 0};
		}
			
		$.prompt(
			frm_add_list,
			{
				opacity 		: 0.2,
				promptspeed 	: 500,
				overlayspeed 	: 200,
				focus			: 3,
				top				: '25%',
				buttons 		: bttn,
				submit	 : function(v,m,f){
						
					if(v){
						var ichk = 0;
						var chk = new Array();
						$('#add_list_price').find('input[type=\'checkbox\']').each(function(){
							if($(this).is(':checked')){
								chk[ichk] = [$(this).val()];
								ichk++;
							}
						});
						if(f.room_type == 0 || f.room_type == 'add1'){
							alert('Не указано поле Название номера! Выберите из ниспадающего списка или создайте новое.');
							return false;
						} else if(f.food_type == 0){
							alert('Не указано поле Вариант еды! Выберите из ниспадающего списка или создайте новое.');
							return false;
						} else if(ichk == 0){
							alert('Не выбран день недели! Выберите хотя бы один день недели.');
							return false;
						} else if(f.cost_room == ''){
							alert('Не указано поле Стоимость номера! Без заполения данного поля, цены не добавятся!');
							return false;
						}
						$('#list_week').val(chk.join(','));
					}
					if(v == 2){
						action_list(id, action, list, 1);
							
						setTimeout(
							function(){
								$('#room_type').val(f.room_type);
								$('#food_type').val(f.food_type);
									
								jQuery.each(chk, function(index, value){
									$('#wkd_'+ value).attr('checked', true);
								});
									
								$('#numb_room').val(f.numb_room);
								$('#cost_room').val(f.cost_room);
								$('#extra_numb_room').val(f.extra_numb_room);
								$('#extra_cost_room').val(f.extra_cost_room);
							},
							500
						);
					}
					return true;
				},
				callback : function(v,m,f){
					if(v){
							
						$.getJSON(
							add_price,
							{
								id			: id,
								action 		: action,
								id_date		: $('#list_price_val').val(),
								rm_type		: f.room_type,
								fd_type 	: f.food_type,
								wk_day		: $('#list_week').val(),
								nm_room		: f.numb_room,
								ct_room		: f.cost_room,
								ex_nm_room	: f.extra_numb_room,
								ex_ct_room	: f.extra_cost_room
							},
							add_price_in_list
						);
					}
				}
			}
		);
		
		if(action == 'edit_list'){
			var split_list = list.split(';');
				
			$('#room_type').val(split_list[0]);
			$('#food_type').val(split_list[1]);
				
			jQuery.each(split_list[2].split(','), function(index, value){
				$('#wkd_'+ value).attr('checked', true);
			});
			$('#numb_room').val(split_list[3]);
			$('#cost_room').val(split_list[4]);
			$('#extra_numb_room').val(split_list[5] == 0?'':split_list[5]);
			$('#extra_cost_room').val(split_list[6] == 0?'':split_list[6]);
		}
		
		$('#room_type').change(function(){
			if($('#room_type option:selected').val() == 'add1' && $('#add_room_type').css('display') == 'none'){
				$('#add_room_type').slideDown(70);
			} else {
				$('#add_room_type').hide();
			}
		});
			
		$('#food_type').change(function(){
			if($('#food_type option:selected').val() == 'add2' && $('#add_food_type').css('display') == 'none'){
				$('#add_food_type').slideDown(70);
			} else {
				$('#add_food_type').hide();
			}
		});
			
		$('#add_room').click(function(){
			if($('#add1_new').val() == ''){
				alert('Введите название номера!');
			} else if($('#add1_new_numb').val() == ''){
				alert('Введите количество мест в номере!');
			} else {
				$.getJSON(
					add_price,
					{
						action 	: 'add_type',
						type 	: 'room_type',
						rt_name : $('#add1_new').val(),
						rt_numb : $('#add1_new_numb').val()
					},
					reload_sel_list
				);
			}
		});
			
		$('#add_food').click(function(){
			if($('#add2_new').val() == ''){
				alert('Введите название варианта еды!');
			} else {
				$.getJSON(
					add_price,
					{
						action 	: 'add_type',
						type 	: 'food_type',
						rt_name : $('#add2_new').val(),
						rt_numb : 0
					},
					reload_sel_list
				);
			}
		});
	} else if(action == 'del_list'){
		if (confirm("Вы уверены что хотете удалить эту цену?")){
			$.getJSON(
				add_price,
				{
					id		: id,
					action 	: 'del_price'
				},
				add_price_in_list
			);
		}
	} else if(action == 'up' || action == 'down'){
		$.getJSON(
				add_price,
				{
					id		: id,
					action 	: action
				},
				add_price_in_list
			);
	}
}

function reload_sel_list(obj){
	var tt = obj.type == 'room_type'?1:2;
		
	$('#add_'+ obj.type).hide();
	$('#add'+ tt +'_new, #add'+ tt +'_new_numb').val('');
		
	$('#'+obj.type).empty().append($(obj.list));
}

function add_price_in_list(obj){
		
	$('#inside_list').empty();
		
	$(obj.list).appendTo('#inside_list');
		
	if(obj.auth == 1){
		$('.sortable')
			.css('cursor', 'pointer')
			.sortable({
				opacity		: 0.4,
				placeholder	: "ui-state-highlight",
				update		: function (event, ui){
					var out_ord = new Array,
						order = $(this).sortable('serialize').split('&');
						
					jQuery.each(order, function(index, value){
						out_ord.push(value.split('=')[1]);
					});
						
					$.getJSON(
						add_price,
						{
							id		: out_ord.join(','),
							action 	: 'reord_list_pr'
						},
						add_price_in_list
					);
				}
			});
			
		$('.pr_list_action').hover(function(){
			$(this).stop().animate({'opacity': 1}, 400);
		}, function(){
			$(this).stop().animate({'opacity': 0.25}, 400);
		});
			
		if(obj.action == 'date'){
			$.blockUI({ message: 'Дата добавлена!'});
		} else if(obj.action == 'edit'){
			$.blockUI({ message: 'Дата обновлена!'});
		} else if(obj.action == 'del_date'){
			$.blockUI({ message: 'Дата удалена!'});
		} else if(obj.action == 'reord_list_pr'){
			$.blockUI({ message: 'Порядок сортировки списка номеров изменён!'});
		} else if(obj.action == 'edit_list'){
			$.blockUI({ message: 'Номер обновлён!'});
		} else if(obj.action == 'add_list'){
			$.blockUI({ message: 'Номер добавлен!'});
		} else if(obj.action == 'del_price'){
			$.blockUI({ message: 'Номер удалён!'});
		}
			
		/*if(obj.reopen != ''){
			action_list(obj.reopen, obj.action)
		}*/
	}
}

function wkd_check(obj, inp){
	var pre = inp?'edit':'add';
	$('#'+ pre +'_list_price').find("input[type='checkbox']").each(function(){
		if($(this).is(':checked')){
			$(this).attr('checked', false);
		}
	});
		
	if(obj != ''){
		jQuery.each(obj.split(','), function(index, value){
			$('#'+ inp +'wkd_'+ value).attr('checked', true);
		});
	}
}

function order_list(obj){
		
	
		
	if(obj.action == 'date_check'){
		$('#text3, #text2').hide();
		if($('#text1').css('display') == 'block'){
			$('#text1').slideToggle(100);
		}
			
		if($('#fd_type').css('display') == 'block'){
			$('#fd_type').fadeOut(200);
			$('#food_type').empty();
		}
			
		if($('#show_date').css('display') == 'block'){
			$('#show_date').hide();
			$('#edit_date_ent').show();
		}
			
		if(obj.all_action == 0){
			$('#text3').show();
			if($('#form4').css('display') == 'none'){
				$('#form4').slideDown(100);
			}
			if($('#form3').css('display') == 'block'){
				$('#form3').hide();
			}
		} else {
			if($('#form4').css('display') == 'block'){
				$('#form4').slideToggle(100);
			}
			if($('#form3').css('display') == 'none'){
				$('#form3').slideToggle(100);
			}
			$('#text2').show();
			$('#cat_room_date').val(obj.id_date);
			$('#cat_room').empty().append($('<option value="0">укажите номер</option>'+ obj.room_type));
		}
		
		$('#in_date').html(obj.in_date);
		$('#out_date').html(obj.out_date);
		$('#sum_day').html(obj.sum_day);
			
		if($('#form2').css('display') == 'none'){
			$('#form2').slideToggle(100);
		} else {
			$('#form2').animate({"opacity": 0.1}, 100).animate({"opacity": 1}, 100);
		}
			
		$('#ex_place').keyup(function(){
			if($('#numb_room').val() == '' || $('#numb_room').val() == 0){
				$('#ex_place').val('');
				alert('Укажите КОЛИЧЕСТВО НОМЕРОВ!');
			} else if($('#numb_ppl').val() == '' || $('#numb_ppl').val() == 0){
				$('#ex_place').val('');
				alert('Укажите КОЛИЧЕСТВО ЧЕЛОВЕК!');
			} else {
				if(parseInt($('#ex_place').val()) > parseInt($('#max_extra').val())){
					alert('Превышен лимит дополнительных мест!');
					$('#ex_place').val($('#max_extra').val());
				}
			}
		});
	}
	var ex_food;
	if(obj.action == 'food_relist'){
		ex_food = obj.food_type;
		if(ex_food[1]){
			if($('#fd_type').css('display') == 'none'){
				$('#fd_type').fadeIn(200);
			}
			$('#food_type').empty().append($('<option value="0">укажите вариант питания</option>'+ obj.food_type.join('')));
		} else {
			$('#fd_type').fadeOut(200);
			$('#food_type').empty().append($(obj.food_type.join('')));
		}
	} else if(obj.action == 'extra_place_calc'){
			
		if(obj.list != 0){
			if($('#ex_place').css('display') == 'none'){
				$('#ex_place').fadeIn(250);
			}
			$('#exrm_place > div').html(obj.list_txt);
			$('#max_extra').val(obj.list);
		} else {
			$('#ex_place').fadeOut(50);
			$('#max_extra').val(0);
			$('#exrm_place > div').hide().html('дополнительных мест нет').fadeIn(250);
		}
		
	} else if(obj.action == 'chk_numb_room'){
		if($('#cat_room').val() == 0){
			alert('Не выбранна КАТЕГОРИЯ НОМЕРА!');
			$('#numb_room').val('');
			$('#cat_room').focus();
			$('#cat_room').css({'border': '1px solid #F88614'}).focus();
		} else if(obj.list < parseInt($('#numb_room').val())){
				
			if(parseInt(obj.list) != 0){
				$('#numb_room').val(obj.list);
				alert('В данной категории номера '+ obj.list_txt +'!');
			}
		}
	} else if(obj.action == 'chk_numb_ppl'){
			
		if($('#numb_room').val() == 1 && obj.list < parseInt($('#numb_ppl').val())){
				
			$('#numb_ppl').val(obj.list);
			alert('Максимально возможно '+ obj.list_txt);
		} else if($('#numb_room').val() > 1 && parseInt($('#numb_room').val())*obj.list < parseInt($('#numb_ppl').val())){
				
			$('#numb_ppl').val(parseInt($('#numb_room').val())*obj.list);
			alert('Максимально возможно '+ obj.list_txt +'!');
		}
	} else if(obj.action == 'calc_cost'){
			
		var summ = obj.summ*$('#numb_room').val();
		if(obj.extra != '' || obj.extra != 0){
			summ = summ + obj.extra*$('#ex_place').val();
		}
		$('#cost_price').show();
		
		$('#summ_price').html(obj.ransom != ''?parseInt(summ) + parseInt(obj.ransom) +' руб.':summ +' руб.');
		$('#summ_price_calc').val(summ);
	} else if(obj.action == 'send_msg'){
		//$.prompt(obj.list, {top: '5%'});
		window.location = obj.list_txt;
	}
}

function vote_action(dgt){
	$.getJSON(rest_house_vote, { vote : dgt, action : 'vote' }, post_vote);
}

function post_vote(obj){
		
	if(obj.err == ''){
		setCookie(obj.id +'vote_user', obj.ck, 365);
			
		$('#rh_vote > div, #rh_vote_top').fadeOut(250);
		$('#rh_vote > a').fadeOut(250);
		$('#rh_vote, #rh_vote_top').animate({'height': '5px'}, 350);
		setTimeout( function(){ $('#rh_vote > div, #rh_vote_top').empty(); $('#rh_vote > a, #rh_vote_top').remove(); }, 450);
			
		$('#rh_vote').animate({'height': '35px'}, 250);
		setTimeout( function(){ $('#rh_vote > div').html(obj.list).fadeIn(100); }, 750);
			
	} else {
		alert(obj.err);
	}
}

function change_ransom(){
	if($('#method_ransom').val() == 2){
		$('#my_ransom').fadeOut(200);
	} else {
		$('#my_ransom').fadeIn(200);
	}
}

var ord_action = {
	first			: function(){
			
		if($('#cat_room').val() == 0){
			alert('Для продолжения заказа КАТЕГОРИЯ НОМЕРА должна быть выбрана!');
			$('#cat_room').css({'border': '1px solid #F88614'}).focus();
		} else if($('#fd_type').css('display') == 'block' && $('#food_type').val() == 0){
			alert('Для продолжения заказа ВАРИАНТ ПИТАНИЯ должн быть выбран!');
			$('#food_type').css({'border': '1px solid #F88614'}).focus();
		} else if($('#numb_room').val() == '' || $('#numb_room').val() == 0){
			alert('Для продолжения заказа заполните поле КОЛИЧЕСТВО НОМЕРОВ!');
			$('#numb_room').css({'border': '1px solid #F88614'}).focus();
		} else if($('#numb_ppl').val() == ''){
			alert('Для продолжения заказа заполните поле КОЛИЧЕСТВО ЧЕЛОВЕК!');
			$('#numb_ppl').css({'border': '1px solid #F88614'}).focus();
		} else {
			$('#text2').slideToggle(250);
			$('#pre_form3').fadeIn(250);
				
			$('#cat_room').hide();
			$('#cat_room_txt > div').html($('#cat_room option:selected').text());
				
			if($('#fd_type').css('display') == 'block'){
				$('#food_type').hide();
				$('#food_type_txt > div').html($('#food_type option:selected').text());
			} else {
				$('#fd_type').fadeIn(250);
				$('#food_type').hide();
				$('#food_type_txt > div').html($('#food_type option:selected').text());
			}
				
			$('#numb_room').hide();
			$('#numb_room_txt > div').html($('#numb_room').val());
				
				
			$('#numb_ppl').hide();
			$('#numb_ppl_txt > div').html($('#numb_ppl').val());
				
			$('#first_action').parent().fadeOut(250);
			$('#text3').show();
				
			if($('#ex_place').val() == ''){
				$('#extra_place').hide();
			} else {
				$('#ex_place').hide();
				$('#exrm_place > div').html($('#ex_place').val());
			}
				
			$.getJSON(
				order_list_calc,
				{
					id_date		: $('#cat_room_date').val(),
					date_in		: $('#date_incal').val(),
					date_out	: $('#date_outcal').val(),
					room_tp		: $('#cat_room option:selected').val(),
					food_tp 	: $('#food_type option:selected').val(),
					numb_rm		: $('#numb_room').val(),
					numb_ppl	: $('#numb_ppl').val(),
					ex_place	: $('#ex_place').val(),
					action		: 'calc_cost'
				},
				order_list
			);
				
			setTimeout(function(){ $('#form4').slideToggle(450); }, 600);
		}
	},
		
	second			: function(){
		if($('#fio').val() == ''){
			alert('Не указано поле ФИО!');
			$('#fio').css({'border': '1px solid #F88614'}).focus();
		} else if($('#phone').val() == ''){
			alert('Не указано поле ТЕЛЕФОН!');
			$('#phone').css({'border': '1px solid #F88614'}).focus();
		} else if($('#phone').val().length < 6){
			alert('Номер телефона не может содержать меньше шести символов!');
			$('#phone').css({'border': '1px solid #F88614'}).focus();
		} else if($('#count_ppl').val() ==''){
			alert('Не указано поле КОЛИЧЕСТВО ЧЕЛОВЕК!');
			$('#count_ppl').css({'border': '1px solid #F88614'}).focus();
		} else if($('#email').val() != '' && isValidEmail('#email') === false){
			alert('Неправильно указан EMAIL адрес!');
			$('#email').css({'border': '1px solid #F88614'}).focus();
		} else {
			$('#text3').hide();
			$('#pre_form4').slideToggle(250);
			$('#second_action').parent().hide();
			$('#third_action').parent().fadeIn(250);
				
			$('#fio, #phone, #count_ppl, #email, #payment_method, #method_ransom, #metro, #address, #info, #discount').hide();
				
			$('#fio_txt > div').html($('#fio').val());
			$('#phone_txt > div').html($('#phone').val());
			$('#count_ppl_txt > div').html($('#count_ppl').val());
			if($('#email').val() != ''){
				$('#email_txt > div').html($('#email').val());
			} else {
				$('#email_empty').hide();
			}
			if($('#discount').val() == 57){
				$('#discnt_empty').hide();
			} else {
				$('#discount_txt > div').html($('#discount option:selected').text());
			}
			$('#paym_txt > div').html($('#payment_method option:selected').text());
			$('#ransom_txt > div').html($('#method_ransom option:selected').text());
				
			if($('#my_ransom').css('display') == 'block'){
				$('#metro_txt > div').html($('#metro').val() != ''?$('#metro').val():'не указана');
				$('#address_txt > div').html($('#address').val() != ''?str_replace("\n", '<br />', $('#address').val()):'не указан');
			}
				
			if($('#method_ransom').val() == 1){
				if(!ransom || ransom == ''){
					ransom = 0;
				}
				var resumm = parseInt($('#summ_price_calc').val()) + parseInt(ransom);
				$('#summ_price').html(resumm +' руб.');
			}
			if($('#info').val() != ''){
				$('#info_txt > div').html(str_replace("\n", '<br />', $('#info').val()));
			} else {
				$('#info_empty').slideToggle(250);
			}
				
			$('#edit_1action, #edit_2action').parent().slideToggle(250);
		}
	},
		
	third			: function(){
		if($('#save_1action').parent().css('display') == 'block'){
			alert('Нажмите кнопку обновить в Информации о заказе и подвердите заказ!');
		} else if($('#save_2action').parent().css('display') == 'block'){
			alert('Нажмите кнопку обновить в Личных данных и подвердите заказ!');
		} else {
				
			$.blockUI({
				showOverlay	: true,
				centerY		: true,
				message		: 'Подождите!<br />Идёт обработка информации.',
				css			: {
					top				: ($(window).height() - 500) /2 + 'px', 
					left			: ($(window).width() - 500) /2 + 'px', 
					width			: '450px',
					padding			: '40px 0px',
					border			: '1px solid #D9DAE7',
					'font-size'		: '110%',
					'text-align'	: 'center',
					backgroundColor : '#1364D6',
					opacity			: '.85',
					filter			: 'alpha(opacity = 85)',
					color			: '#fff'
				}
			});
				
			$.getJSON(
					order_list_calc,
					{
						in_date		: $('#in_date').text(),
						out_date	: $('#out_date').text(),
						sum_day		: $('#sum_day').text(),
						cat_room	: $('#cat_room option:selected').text(),
						room_name	: $('#room_name').text(),
						food_type	: $('#food_type option:selected').text(),
						numb_room	: $('#numb_room_txt > div').text(),
						numb_ppl	: $('#numb_ppl_txt > div').text(),
						exrm_place	: $('#ex_place').val(),
						fio			: $('#fio').val(),
						phone		: $('#phone').val(),
						email		: $('#email_txt > div').text(),
						discount	: $('#discount option:selected').text(),
						payment		: $('#payment_method option:selected').text(),
						ransom		: $('#method_ransom option:selected').text(),
						metro		: $('#metro_txt > div').text(),
						address		: $('#address_txt > div').text(),
						info		: $('#info_txt > div').text(),
						summ_price	: $('#summ_price').text(),
						action		: 'send_msg',
						count_ppl	: $('#count_ppl').val()
					},
					order_list
				);
		}
	},
		
	chk_numb_room	: function(){
		if($('#numb_room').val() != '' || $('#numb_room').val() != 0){
			$.getJSON(
				order_list_calc,
				{
					id_date		: $('#cat_room_date').val(),
					date_in		: $('#date_incal').val(),
					room_tp		: $('#cat_room option:selected').val(),
					food_tp 	: $('#food_type option:selected').val(),
					numb_rm		: $('#numb_room').val(),
					action		: 'chk_numb_room'
				},
				order_list
			);
		}
	},
		
	chk_numb_ppl	: function(){
			
		if($('#numb_room').val() != '' || $('#numb_room').val() != 0){
			$.getJSON(
				order_list_calc,
				{
					room_tp		: $('#cat_room option:selected').val(),
					numb_rm		: $('#numb_room').val(),
					numb_ppl	: $('#numb_ppl').val(),
					action		: 'chk_numb_ppl'
				},
				order_list
			);
			$('#ex_place').click();
		} else {
			alert('Укажите КОЛИЧЕСТВО НОМЕРОВ!');
			$('#numb_ppl').val('');
		}
	},
		
	extra_place		: function(){
		if($('#numb_room').val() != '' && $('#numb_ppl').val() != ''){
			$.getJSON(
				order_list_calc,
				{
					id_date		: $('#cat_room_date').val(),
					date_in		: $('#date_incal').val(),
					room_tp		: $('#cat_room option:selected').val(),
					food_tp 	: $('#food_type option:selected').val(),
					numb_rm		: $('#numb_room').val(),
					action		: 'extra_place_calc'
				},
				order_list
			);
		}
	},
		
	edit_1action	: function(){
		$('#cost_price').hide();
		$('#edit_1action').parent().hide();
		$('#save_1action').parent().show();
		$('#summ_price').html('');
		$('#cat_room, #food_type, #numb_room, #numb_ppl, #ex_place').show();
		$('#cat_room_txt > div, #food_type_txt > div, #numb_room_txt > div, #numb_ppl_txt > div, #exrm_place > div').html('');
		
		$('#extra_place').show();
	},
		
	save_1action	: function(){
		if($('#cat_room').val() == 0){
			alert('Для продолжения заказа КАТЕГОРИЯ НОМЕРА должна быть выбрана!');
			$('#cat_room').css({'border': '1px solid #F88614'}).focus();
		} else if($('#fd_type').css('display') == 'block' && $('#food_type').val() == 0){
			alert('Для продолжения заказа ВАРИАНТ ПИТАНИЯ должн быть выбран!');
			$('#food_type').css({'border': '1px solid #F88614'}).focus();
		} else if($('#numb_room').val() == '' || $('#numb_room').val() == 0){
			alert('Для продолжения заказа заполните поле КОЛИЧЕСТВО НОМЕРОВ!');
			$('#numb_room').css({'border': '1px solid #F88614'}).focus();
		} else if($('#numb_ppl').val() == ''){
			alert('Для продолжения заказа заполните поле КОЛИЧЕСТВО ЧЕЛОВЕК!');
			$('#numb_ppl').css({'border': '1px solid #F88614'}).focus();
		} else {
			$('#edit_1action').parent().show();
			$('#save_1action').parent().hide();
			//$('#cat_room, #food_type, #numb_room, #numb_ppl').hide();
			
			$('#cat_room').hide();
			$('#cat_room_txt > div').html($('#cat_room option:selected').text());
				
			if($('#fd_type').css('display') == 'block'){
				$('#food_type').hide();
				$('#food_type_txt > div').html($('#food_type option:selected').text());
			} else {
				$('#fd_type').fadeIn(250);
				$('#food_type').hide();
				$('#food_type_txt > div').html($('#food_type option:selected').text());
			}
				
			$('#numb_room').hide();
			$('#numb_room_txt > div').html($('#numb_room').val());
				
				
			$('#numb_ppl').hide();
			$('#numb_ppl_txt > div').html($('#numb_ppl').val());
				
			if($('#ex_place').val() == ''){
				$('#extra_place').slideToggle(250);
			} else {
				$('#ex_place').hide();
				$('#exrm_place > div').html($('#ex_place').val());
			}
				
			$.getJSON(
				order_list_calc,
				{
					id_date		: $('#cat_room_date').val(),
					date_in		: $('#date_incal').val(),
					date_out	: $('#date_outcal').val(),
					room_tp		: $('#cat_room option:selected').val(),
					food_tp 	: $('#food_type option:selected').val(),
					numb_rm		: $('#numb_room').val(),
					numb_ppl	: $('#numb_ppl').val(),
					ex_place	: $('#ex_place').val(),
					edit		: $('#method_ransom').val(),
					action		: 'calc_cost'
				},
				order_list
			);
		}
	},
		
	edit_2action	: function(){
		$('#edit_2action').parent().hide();
		$('#save_2action').parent().show();
			
		$('#fio, #phone, #count_ppl, #email, #payment_method, #method_ransom, #metro, #address, #info_empty, #discnt_empty, #discount').show();
		$('#info').slideToggle(400);
		$('#fio_txt > div, #phone_txt > div, #count_ppl_txt > div, #email_txt > div, #paym_txt > div, #ransom_txt > div, #metro_txt > div, #address_txt > div, #info_txt > div, #discount_txt > div').html('');
			
		if($('#method_ransom').val() == 1){
			$('#my_ransom').show();
		}
			
		$('#method_ransom').change(function(){
			resumm = 0;
			if($(this).val() == 1){
				resumm = parseInt($('#summ_price_calc').val()) + parseInt(ransom);
				$('#summ_price').html(resumm +' руб.');
			} else {
				resumm = parseInt($('#summ_price_calc').val());
				$('#summ_price').html(resumm +' руб.');
			}
		});
	},
		
	save_2action	: function(){
		if($('#fio').val() == ''){
			alert('Не указано поле ФИО!');
			$('#fio').css({'border': '1px solid #F88614'}).focus();
		} else if($('#phone').val() == ''){
			alert('Не указано поле ТЕЛЕФОН!');
			$('#phone').css({'border': '1px solid #F88614'}).focus();
		} else if($('#count_ppl').val() ==''){
			alert('Не указано поле КОЛИЧЕСТВО ЧЕЛОВЕК!');
			$('#count_ppl').css({'border': '1px solid #F88614'}).focus();
		} else if($('#phone').val().length < 6){
			alert('Номер телефона не может содержать меньше шести символов!');
			$('#phone').css({'border': '1px solid #F88614'}).focus();
		} else if($('#email').val() != '' && isValidEmail('#email') === false){
			alert('Неправильно указан EMAIL адрес!');
			$('#email').css({'border': '1px solid #F88614'}).focus();
		} else {
			$('#edit_2action').parent().show();
			$('#save_2action').parent().hide();
				
			$('#fio, #phone, #count_ppl, #email, #payment_method, #method_ransom, #metro, #address, #info, #discount').hide();
				
			$('#fio_txt > div').html($('#fio').val());
			$('#phone_txt > div').html($('#phone').val());
			$('#count_ppl_txt > div').html($('#count_ppl').val());
			if($('#email').val() != ''){
				$('#email_txt > div').html($('#email').val());
			} else {
				$('#email_empty').hide();
			}
				
			if($('#discount').val() == 57){
				$('#discnt_empty').hide();
			} else {
				$('#discount_txt > div').html($('#discount option:selected').text());
			}
			$('#paym_txt > div').html($('#payment_method option:selected').text());
			$('#ransom_txt > div').html($('#method_ransom option:selected').text());
				
			if($('#my_ransom').css('display') == 'block'){
					
				$('#metro_txt > div').html($('#metro').val() != ''?$('#metro').val():'не указана');
				$('#address_txt > div').html($('#address').val() != ''?str_replace("\n", '<br />', $('#address').val()):'не указан');
			}
				
			if($('#info').val() != ''){
				$('#info_txt > div').html(str_replace("\n", '<br />', $('#info').val()));
			} else {
				$('#info_empty').slideToggle(250);
			}
		}
	}
}

function rebuild_ya_list(obj){
	if(obj.action == 'date_save'){
		$('#date_hd').hide();
		$('#date').show().html(obj.list);
	} else if(obj.action == 'add_price' || obj.action == 'del' || obj.action == 'up' || obj.action == 'down' || obj.action == 'edit'){
		if(obj.action == 'del' && obj.value == 0){
			$('#yandex_send').attr('checked', false).attr('disabled', true);
			$.getJSON(ya_action, { bool: $('#yandex_send').attr('checked'), action: 'ya_send' }, rebuild_ya_list);
		} else if(obj.action == 'add_price' && obj.value == 1){
			$('#yandex_send').attr('disabled', false);
		}
			
		$('#ya_price_list').empty();
		$(obj.list).appendTo('#ya_price_list');
	} else if(obj.action == 'order'){
		$('#line_date').hide();
		$('#date_line').slideToggle(150);
			
		$('#ya_price_list').empty();
		$(obj.list).appendTo('#ya_price_list');
			
		$('#second_action').click(ord_action.second);
		$('#edit_2action').click(ord_action.edit_2action);
		$('#save_2action').click(ord_action.save_2action);
		
		$('#third_action').click(ord_action.third);
	}
		
	if(obj.res){
		alert(obj.res);
	}
}

function load_fields(obj){
	$('#room_name').val(obj.list[0]);
	$('#cost_room').val(obj.list[1]);
}

function str_replace ( search, replace, subject ) {
		
	if(!(replace instanceof Array)){
		replace=new Array(replace);
		if(search instanceof Array){
			while(search.length>replace.length){
				replace[replace.length]=replace[0];
			}
		}
	}
		
	if(!(search instanceof Array))search=new Array(search);
		while(search.length>replace.length){
			replace[replace.length]='';
		}
	
	if(subject instanceof Array){
		for(k in subject){
			subject[k]=str_replace(search,replace,subject[k]);
		}
		return subject;
	}
	
	for(var k=0; k<search.length; k++){
		if(subject){
			var i = subject.indexOf(search[k]);
			while(i>-1){
				subject = subject.replace(search[k], replace[k]);
				i = subject.indexOf(search[k],i);
			}
		}
	}
	
	return subject;

}
