$(function() {
	 switch($(document).getUrlParam(1, '/')) {
		 case 'pay':
			 $('#paypal_form').submit();
		 break;
		 default:
			 
			 $('#code').val('054a1069d55efe6fbc092f3c892581ae');
			 giorni_anticipo = eval("(" + $('#giorni_anticipo').val() + ")");
						 $.validator.addMethod('hasClass', function(value, element, param) { 
																								return $(element).hasClass(param);
																							 }, 
																							 jQuery.format('Please check the button'));
						 $("#prenota_form").validate({
							 invalidHandler: function(form, validator) {
									var errors = validator.numberOfInvalids();
									if (errors) {
										$("div#error_container").show();
									} else {
										$("div#error_container").hide();
									}
								},
								onfocusout: false,
								onkeyup: false,
								onclick:false,
								meta: "validate",
								errorPlacement: function(error, element) {
									$labelToAppendTo = $('label[for='+element[0].id+']');
									error.appendTo($("div#error_container")).clone().appendTo($labelToAppendTo);
									$('<br />').appendTo($("div#error_container"));
								}
						 });
		
			 log(giorni_anticipo);
			 $('#tour').change(function() {
				 $('#data_richiesta').datepicker('destroy');
				 $('#data_richiesta').val('');
				 $('#data_richiesta').datepicker({showOn: 'both',
																buttonImageOnly: true,
																buttonImage: 'images/calendar.gif', 
																minDate : '+'+giorni_anticipo[$(this).val()]+'d',
																dateFormat: getLang('cal', 'DATE_FORMAT'),
																onSelect: function() { 
																					$('#verifica_disponibilita').removeClass('to_check checking ok ko').addClass('to_check');
																				}
																});
					$('#verifica_disponibilita').removeClass('to_check checking ok ko').addClass('to_check');
			 });
			 
			 
			 if(parseInt($('#tour').val()) != 0) {
				 minDate = giorni_anticipo[$('#tour').val()]+'d';
			 } else {
				 minDate = '+1d';
			 }
			 
			 $('#data_richiesta').datepicker({showOn: 'both',
															buttonImageOnly: true,
															buttonImage: 'images/calendar.gif', 
															minDate : minDate, 
															dateFormat: getLang('cal', 'DATE_FORMAT'),
															onSelect: function() { 
																					$('#verifica_disponibilita').removeClass('to_check checking ok ko').addClass('to_check');
																				}
														 });
														 
			 $('#verifica_disponibilita').click(function() {
					if(parseInt($('#tour').val()) > 0 && $('#data_richiesta').val() != '') {
						$('#verifica_disponibilita').removeClass('to_check checking ok ko').addClass('checking');
						data = 'cmd=PRENOTAZIONI.CHECK_AVAIL&id='+$('#tour').val()+'&data='+$('#data_richiesta').val();
						$.ajax({
							type: "POST",
							url: main_host+"ajax.php",
							data: data,
							dataType: "json",
							success: function(returned_data) { showResult(returned_data) }
						});
					}
					
					return false;
			 });
			 
			 $('#controlla_totale').click(function() {
					errore = '';
					
					if($.trim($('#data_richiesta').val()) == '') {
						errore += "<br />";
						errore += getLang('prenota', 'SELECT_A_DATE');
					}
					
					posti = false;
					
					$('.posti').each(function() {
						if(parseInt($(this).val()) > 0) {
							posti = true;
						}
					});
					
					if(!posti) {
						errore += "<br />";
						errore += getLang('prenota', 'SELECT_POSTI');
					}
					
					if(errore == '') {
						posti = $('.posti').serialize();
						data = 'cmd=PRENOTAZIONI.CHECK_TOTAL&id='+$('#tour').val()+'&'+posti+'&data='+$('#data_richiesta').val();
						$.ajax({
							type: "POST",
							url: main_host+"ajax.php",
							data: data,
							dataType: "json",
							success: function(returned_data) { updateTotal(returned_data) }
						});
					} else {
						modal_dialog(getLang('base', 'WARNING'), errore);
					}
			 });
			 
	}
	 
});

function showResult(ret_data) {
	if(parseInt(ret_data.result) == 1) {
		$('#verifica_disponibilita').removeClass('to_check checking ok ko');
		if(parseInt(ret_data.avail) == 1) {
			$('#verifica_disponibilita').addClass('ok');
		} else {
			$('#verifica_disponibilita').addClass('ko');
		}
	} else {
		modal_dialog(getLang('base', 'WARNING'), ret_data.error)
	}
}



function updateTotal(ret_data) {
	if(parseInt(ret_data.result) == 1) {
		
		$('.tariffe').show();
		
		totaleNum = 0;
	
		for(i=0; i < ret_data.data.length; i++) {
			prezzo = ret_data.data[i];
			$('#richiesta_posti_'+prezzo.id).html($('#posti_'+prezzo.id).val());
			$('#prezzo_'+prezzo.id).html(number_format(parseFloat(prezzo.prezzo), 2, getLang('base', 'DEC_POINT') ,getLang('base', 'THOUSANDS_SEP'))+'&nbsp;'+prezzo.simbolo);
			if(isNaN(parseFloat($('#posti_'+prezzo.id).val()))) {
				$('#posti_'+prezzo.id).val('0');
			}
			subtotale = parseFloat(prezzo.prezzo)*parseFloat($('#posti_'+prezzo.id).val());
			totaleNum += subtotale;
			$('#subtotale_'+prezzo.id).html(number_format(subtotale, 2,  getLang('base', 'DEC_POINT'),getLang('base', 'THOUSANDS_SEP'))+'&nbsp;'+prezzo.simbolo);
		}
		$('#totale').html(number_format(totaleNum, 2, getLang('base', 'DEC_POINT'), getLang('base', 'THOUSANDS_SEP'))+ret_data.data[0]['simbolo']);
		
		if(parseInt(ret_data.in_offerta) == 1) {
			$('#offerta').show();
		} else {
			$('#offerta').hide();
		}
	
	} else {
		modal_dialog(getLang('base', 'WARNING'), ret_data.error)
	}
}