jQuery(document).ready(function() {
	$(document).ready(function(){
	       $('.js_init_datepicker').each(function(){ 
    			$('.filter_date').attachDatepicker({yearRange: '1970:'+$(this).attr('cur_year')});
  		});

		//простые контакты (телефоны, аськи)
		$('.crypt1').each(function(){
			$(this).html(base64_decode($(this).html()));
			$(this).show();
		});
		//emails - все почтовые ящики типа mailto
		$('.crypt2').each(function(){
			var tmp = base64_decode($(this).html());
			$(this).html(tmp);
			$(this).parent().attr('href','mailto:'+tmp);
			$(this).show();
		});
		/*
		 * @author CQSpel
		 * блок перехода по городам с главной страницы
		 */
		$('.switchTown')
		.unbind('click')
		.bind('click', function(e){		
			e.preventDefault();
			//Отправляем запрос скрипту, изменяем город, после чего переходим на страницу
			var src = '';
			var town = 0;
			src 	= $(this).attr('href');
			town 	= $(this).attr('town');
			$.ajax({
				url: "/ajax/changeTown.php",
				global: false,
				type: "POST",
				data: ({town: town}),
				dataType: "html",
				success: function(html){
					//alert(html);
					window.location.href = src;
				}
			});
		});
		
		/*
		 * @author CQSpel
		 * блок перехода по городам с главной страницы Селект
		 */
		$('.townsList')
		.unbind('change')
		.bind('change', function(e){		
			e.preventDefault();
			//Отправляем запрос скрипту, изменяем город, после чего переходим на страницу
			var src = '';
			var town = 0;
			src 	= $('.townsListHref a').attr('href');
			town 	= $(this).val();
			$.ajax({
				url: "/ajax/changeTown.php",
				global: false,
				type: "POST",
				data: ({town: town}),
				dataType: "html",
				success: function(html){
					window.location.href = src.substr(0,src.length-1)+town+'/';
				}
			});
		});
		
		/*
		 * @author CQSpel
		 * Сабмитилка формы по изменению фильтра
		 */
		$('#filter select').each(function(){
			$(this).change(function(){
				$('#filter').submit();
			});
		});
		/*
		 * @author CQSpel
		 * Блок ошибок показать, если есть ошибки
		 */
		function clearnl(text){
			return text.replace(/(\n(\r)?)/g,'');
		}
		var errors = $('.errors').html();
		if(errors != null){
			errors = clearnl(errors);
			var i=0;
			while(errors.lastIndexOf(' ')>0){
				errors = errors.replace(' ', '');
				i++;
				if(i>30) break;
			}
			var i=0;
			while(errors.lastIndexOf('\t')>0){
				errors = errors.replace('\t', '');
				i++;
				if(i>30) break;
			}
			errors = errors.replace('\t', '');
			errors = errors.replace(' ', '');
			if(errors!=''){
				$('.errors').show();
			}
		}
		
		//Блок бронирования
		$('#js-town').change(function() {
			var town_value = $(this).attr('value');
			 
			 $.post("/ajax/bron.php", { cmd: 'type_razm',town: town_value},
                        function(data){                                                            
                               $('#js-type_razm').html(data);
							   	var type_razm_value = $('#js-type_razm').attr('value'); 
		    					get_hotels(town_value,type_razm_value);
								
                        });
		
		     
		})
		$('#js-hotel').change(function() {
		    var hotel_value = $('#js-hotel').attr('value');
		    var count_num_value = $('#js-count_num').attr('value');
			get_num_fond(hotel_value,count_num_value);
			get_type_pay (hotel_value);		     
		})
		$('#js-type_razm').change(function() {
		    var type_razm_value = $(this).attr('value');
		    var town_value = $('#js-town').attr('value');
			get_hotels(town_value,type_razm_value);
		     
		})
		$('#js-count_num').change(function() {
		    var count_num_value = $(this).attr('value');
		    var hotel_value = $('#js-hotel').attr('value');
		   	get_num_fond(hotel_value,count_num_value);
		     
		})
		$('#js-new_capture').click(function(e) {
		     
		     
		     $.post("/ajax/bron.php", { cmd: 'new_capture'},
                        				function(data){                                                            
                              				 $('#js-img_capture').html(data);
								
                       			 	});
		    
		     e.preventDefault();
		}
		)
		//Отправка и обработка результатов отправки
		$('.js-send_bron').click(function() {
				
		     
		      
			  if ($('#js-contact_person').attr('value')=='') {
			  		alert($('#js-contact_person').attr('title'))
			  		return false;			  		
			  } 
			  if ($('#js-phone').attr('value')=='') {
			  		alert($('#js-phone').attr('title'))
			  		return false; 			  		
			  } 
			  
			  reg = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
			  
              /* отключил по просьбе Сашая 
              if (!$('#js-mail').attr('value').match(reg)) { 	
			  		alert($('#js-mail').attr('title'))
			  		return false; 			  		
			  }
              */ 
			
			  if ($('#js-rules').attr('checked')==false) {
			  		alert($('#js-rules').attr('title'))
			  		return false;			  		
			  } 
		      
                //собираем строку запроса
		      var query = 'town='+$('#js-town').attr('value')+'&type_razm='+$('#js-type_razm').attr('value')+'&hotel='+$('#js-hotel').attr('value')+
			  '&date1='+$('#js-date1').attr('value')+'&hour1='+$('#js-hour1').attr('value')+
			  '&date2='+$('#js-date2').attr('value')+'&hour2='+$('#js-hour2').attr('value')+
			  '&count_num='+$('#js-count_num').attr('value')+'&contact_person='+$('#js-contact_person').attr('value')+'&company='+$('#js-company').attr('value')+
			  '&phone='+$('#js-phone').attr('value')+'&mail='+$('#js-mail').attr('value')+'&fax='+$('#js-fax').attr('value')+
			  '&mail='+$('#js-mail').attr('value')+'&type_pay='+$('#js-type_pay').attr('value')+'&text='+$('#js-text').attr('value')+'&capture='+$('#js-capture').attr('value')+
			  '&ex_program='+$('#js-ex_program').attr('checked')+'&dost_put='+$('#js-dost_put').attr('checked')+'&order_mail='+$('#js-order_mail').attr('value');
			 $('.cat_num').each(function(index,element){					
				query=query+'&cat_num-'+index+'='+$(this).attr('value');
				});
			 
		        $.post("/ajax/bron.php",{q:'cmd=send_bron&'+query, cmd:'send_bron'}, 
                        function(data){                                                            
                                if (data=='1') {
									$.post("/ajax/bron.php", { cmd: 'ok'},
                        				function(data){                                                            
                              				$('#main_bron').html(data); 
								
                       			 	});
								
								} else alert(data);
                                
								
                        });
		    return false;
		})
		
		
		
		
		//Функция получения списка отелей
		function get_hotels(town_value,type_razm_value) { 		          
			$.post("/ajax/bron.php", { cmd: 'hotels',town: town_value,type_razm: type_razm_value},
		                        function(data){                                                            
		                               $('#js-hotel').html(data);
		                               var hotel_value = $('#js-hotel').attr('value');
		                               var count_num_value = $('#js-count_num').attr('value');
		                             
		   								get_num_fond(hotel_value,count_num_value);
		   								 
										get_type_pay (hotel_value); 
									  
		                        });    
		}
		//Функция получения номерного фонда
		function get_num_fond(hotel_value,count_num_value) {
				      
			$.post("/ajax/bron.php", { cmd: 'num_fond',hotel: hotel_value, count_num: count_num_value},
		                        function(data){ 
													                                                  
		                               $('#js-num_fond_list').html(data); 									    									  
		                        });    
		}
		//функция получеaния списка возможностей оплаты
		function get_type_pay (hotel_value) {
			$.post("/ajax/bron.php", { cmd: 'type_pay',hotel: hotel_value},
		                        function(data){ 
															                                                  
		                            $('#js-type_pay').html(data); 									    									  
		                        });    
		}
		
		
		//Блок отзывов
		//показать скрыть форму отзывов
		$('.js-add_otziv').click(function(e) {      
		     
		      if ($('.question_form').css('display')=='none') {
			  	$(this +' span ').html('Скрыть форму');	
			  }
			  else {
			    $(this+' span ').html('Оставить отзыв');
			  }
		      $('.question_form').toggle();
		     
		     e.preventDefault();
		} )
		//Звездочки
		$('.star').click(function(e) {      
		     var mark = $(this).attr('title');
		     
		     visible_mark(mark)
		     $('#mark').val(mark);
		     e.preventDefault();
		} );
		$('.stars').mouseout(function(e) {
			visible_mark($('#mark').val())
			 e.preventDefault();
		});
		$('.star').mouseover(function(e) {      
		     var mark = $(this).attr('title');
		    
		     visible_mark(mark)
		     e.preventDefault();
		} );
		
		
		function visible_mark (mark) {
		 
		     $('.star').each(function(index,element){
		    
			if ($(element).attr('title')<=mark) $(element).addClass('star-on');
			else $(element).removeClass('star-on');	
		     });
		     $('#cur_mark').html(mark);
		
		}
		  // отправка данных из формы
		$('#js-send_otziv').unbind('click').bind('click', function(e) {
		
		
		
			 var query = '';
			 var error = '';
			 
	          $('.question_form input').each(function(index,element){
			
			  		 if ($(this).attr('value')=='' ) {
			  		 		if ($(this).attr('name')!='post_email') {
								
			  					error =$(this).attr('title');
			  					return false; 
							} 
								  		
			 		 }
					  else {
					  		if ($(this).attr('name')=='post_email') {
							   		 reg = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
										if (!$(this).attr('value').match(reg)) { 	
										  	error =$(this).attr('title');
			  								return false; 			  		
										} 
							} 
					  
					  }; 
								
					query = query+'&'+$(this).attr("name")+'='+$(this).attr("value");
		      });
		      if (error!='') {
			  	alert(error);
			  	return false;
			}
		      $('.question_form textarea').each(function(index,element){
		      	
			 	 if ($(this).val()=='') {
			  					error =$(this).attr('title');
			  					return false; 
				}					
				query = query+'&'+$(this).attr("name")+'='+$(this).val();
					
		      });
		      if (error!='') {
			  	alert(error);
			  	return false;
			}
		        
			  $.post("/ajax/otziv.php",{q:'cmd=send&'+query}, 
                       function(data){  
						
							                                                        
                              if (data=='1') {
                              
									$.post("/ajax/otziv.php", { q: 'cmd=ok'},
                       			function(data){
								                                                       
                           			$('#main_otziv').html(data);							
                    			});
								
							}
                              else alert(data);
								
              });
			 
			 	
		      e.preventDefault();
		})
		
	});
});