var getDayDelay = function(){
	if($("#arrivo").val().trim() == '') return false;
	if(!chkCityDest()) return false;
	
	// Caricamento della data di arrivo
	$('.datario02 img').attr('src','/img/loading.gif')
	var esito;
	$.ajax({
		type: "POST",
		url: '/ajax/get-city-delay',
		data: 'id_city='+$("#id_arrivo").val()+'&date_from='+$('#date_from').val(),
		async: false, 
		dataType: 'json', 
		success: function(json){
			if(json.esito === true){
				//alert(json.delay);
				$('#date_to').val(json.date_to);
				esito = true;
			}
			else esito = false;
		}, 
		error: function(){
			esito = false;
		}
	});
	$('.datario02 img').attr('src','/img/pul-data-off.gif')
	return esito;
}

// Variabile per l'oggetto link per la ricarica del credito
var button;

$(document).ready(function(){
	
	if($('#lnk_recharge').size() > 0){
		button = $('#lnk_recharge').recharge({
			dialog_box_id: 'box_menu_recharge', 
			frm_id: 'frm_menu_recharge', 
			provenienza: 'home', 
			after_create: function(){
				if(typeof($(this).property('amount')) != 'undefined'){
					amount = parseFloat($(this).property('amount'));
					$('#plafond').html(amount.toFixed(2)+' &euro;');
				}
			}
		});
	}
	
	
	$("#error_dialog").dialog({
		autoOpen: false, 
		buttons: {
			'Chiudi' : function(){
				$(this).dialog('close');
			}
		}, 
		modal: true, 
		draggable: false, 
		resizable: false
	});
	$("[aria-labelledby=ui-dialog-title-error_dialog] .ui-widget-header").addClass('ui-widget-header-red');
	$("#error_dialog_att").dialog({
		autoOpen: false, 
		buttons: {
			'Chiudi' : function(){
				$(this).dialog('close');
			}
		}, 
		modal: true, 
		draggable: false, 
		resizable: false
	});
	$("[aria-labelledby=ui-dialog-title-error_dialog_att] .ui-widget-header").addClass('ui-widget-header-red');
	
	$('#date_from').datepicker({
						defaultDate : '+1', 
						dateFormat : 'dd/mm/yy', 
                      	dayNames : ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'],
						dayNamesMin : ['Do', 'Lu', 'Ma', 'Me', 'Gi', 'Ve', 'Sa'],
						monthNames : ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'],
						monthNamesShort : ['Gen','Feb','Mar','Apr','Mag','Giu','Lug','Ago','Set','Ott','Nov','Dic'],
						firstDay : 1, 
						showOn : 'both', 
				    	buttonImageOnly : true, 
				    	buttonImage : '/img/pul-data.gif', 
				    	buttonText : 'Seleziona Data', 
				    	minDate: '+1',
						duration: 'fast',
						maxDate: '+3m',
						beforeShowDay: noFest 					
	});
	
	      
//	$('#date_to').datepicker({
//						defaultDate : '+3', 
//						dateFormat : 'dd/mm/yy', 
//                      dayNames : ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'],
//						dayNamesMin : ['Do', 'Lu', 'Ma', 'Me', 'Gi', 'Ve', 'Sa'],
//						monthNames : ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'],
//						monthNamesShort : ['Gen','Feb','Mar','Apr','Mag','Giu','Lug','Ago','Set','Ott','Nov','Dic'],
//						firstDay : 1, 
//						showOn : 'both', 
//				    	buttonImageOnly : true, 
//				    	buttonImage : '/img/pul-data.gif', 
//				    	buttonText : 'Seleziona Data',
//				    	minDate: '+3',
//						duration: 'fast'
//	});  
	
	
	// Imposto la selezione minima del datepicker
	$('#date_from').datepicker('option', 'minDate',data_ritiro);
	$('#date_to').datepicker('option', 'minDate',data_consegna);
	
	
	$('#date_from').change(function(){
		
		if($("#arrivo").val().trim() != '') $("#arrivo").blur();
		else{
			var aydata = $('#date_from').val().split('/');
			var giorno = parseFloat(aydata[0]);
			var mese   = parseFloat(aydata[1]) -1;
			var anno   = parseFloat(aydata[2]);
	
			var data = new Date(anno,mese,giorno);
			data.setDate(data.getDate()+2);
			
			while(noFest(data) == false) data.setDate(data.getDate()+1);
			
			$('#date_to').datepicker('option', 'minDate',data);
			var giorno = data.getDate();
			var mese = data.getMonth()+1;
			var anno = data.getFullYear();
			lengthday = giorno.toString().length;
			if (lengthday == 1) giorno = '0'+giorno;
			lengthmes = mese.toString().length;
			if (lengthmes == 1) mese = '0'+mese;
			$('#date_to').val(giorno+'/'+mese+'/'+anno);
		}
	});	
	
	$("#partenza").autocomplete('/ajax/get-city',{
												minChars: 3,
												max: 30,
												autoFill: true,
												delay: 10
												}
	);
	$("#partenza").result(function(event, data, formatted) {
		if (data){
			$("#id_partenza").val(data[1]);
			$("#provincia_partenza").val(data[2]);
			$("#id_provincia_partenza").val(data[3]);
		}
	});
	
	
	
	$("#arrivo").autocomplete('/ajax/get-city',{
												minChars: 3,
												max: 30,
												autoFill: true,
												delay: 10
												}
	);
	$("#arrivo").result(function(event, data, formatted) {
		if (data){
			$("#id_arrivo").val(data[1]);
			$("#provincia_arrivo").val(data[2]);
			$("#id_provincia_arrivo").val(data[3]);
		}
	});
	
	$('#arrivo').bind('blur',getDayDelay);

	
	$("#form_hp").submit(function(){
		error = false;
		/*alert($('#partenza').stripSpecialChar());
		return false;*/
		
		if ( $("#partenza").val().trim() == ''  ) {
			error = true;
			//msg = 'Inserisci la Città da dove devi Spedire';
			msg = '<strong>Combinazione <span class="blue">città di ritiro e di consegna</span> mancante!</strong>';
		}
		
		if (!error){
			if (!chkCityStart()){
					error = true;
					msg = '<strong>La città di <span class="blue">Spedizione</span> <b>'+ucfirst($("#partenza").stripSpecialChar())+'</b> non è servita o non esite.</strong>';						
			}
		}	
			
		if (!error && $('#date_from').val()  == '') {
			error = true;
			msg = 'Seleziona la <b>Data Di Ritiro</b>';
		}
		
		if (!error && $('#date_to').val()  == ''){
			error = true;
			msg = 'Seleziona la <b>Data Di Arrivo</b>';
		}

		
		if ( !error && $("#arrivo").val().trim() == '' ) {
			error = true;
//			msg = 'Inserisci la Città dove deve essere Consegnato';
			msg = '<strong>La combinazione <span class="blue">città di ritiro e di consegna</span> è mancante!</strong>';
		}

		if (!error){
			if (!chkCityDest()){
					error = true;
					msg = '<strong>La città di <span class="blue">Destinazione</span> <b>'+ucfirst($("#arrivo").stripSpecialChar())+'</b> non è servita o non esite.</strong>';						
			}
		}	
		
		if (error){
			$("#error_dialog_att").html('<div class="dialog_txt">'+msg+'</div>');
			$("#error_dialog_att").dialog('open');
			return false;			
		}
		return true;
	});
	
	// Se l'oggetto esiste definisco il click
	if($('#pro_info').size() > 0){
		$('#pro_info').click(function(){
			alert('Pagine di info per il pro da definire');
		});
	}
	
});

function chkCityStart(){
	if($("#partenza").val().trim() == '') return false;
	var esito = true;
	$.ajax({
			type: "POST",
			url: '/ajax/chk-city',
			data: 'city='+$("#partenza").val(),
			async: false,				
			success: function(msg){
				if (msg == ''){
					esito = false;
				}else{
					var data = msg.split('|');
					$("#id_partenza").val(data[1]);
					$("#provincia_partenza").val(data[2]);
					$("#id_provincia_partenza").val(data[3]);
				}
			}
	});
	return esito;
}

function chkCityDest(){
	if($("#arrivo").val().trim() == '') return false;
	var esito = true;
	$.ajax({
			type: "POST",
			url: '/ajax/chk-city',
			data: 'city='+$("#arrivo").val(),
			async: false,				
			success: function(msg){
				if (msg == ''){
					esito = false;
				}else{
					var data = msg.split('|');
					$("#id_arrivo").val(data[1]);
					$("#provincia_arrivo").val(data[2]);
					$("#id_provincia_arrivo").val(data[3]);	
				}
			}
	});
	return esito;
}

function ucfirst (str){
	temp = str.split(' ');
	temp2 = new Array();
	var result = '';
	for(var i=0; i< temp.length; i++){
		var f = temp[i].charAt(0).toUpperCase();
		temp2[temp2.length] = f + temp[i].substr(1);
	}
	//var f = str.charAt(0).toUpperCase();
    return temp2.join(' ');
}
