//JavaScript Document

function Seleziona(field) {

	field.focus();
	field.select();

}

function IsNickOk(myStr) {

	var myReg = new RegExp(/^[\da-zA-Z]{3,16}$/);
	return myReg.test(myStr);

}


function IsNameOk(myStr) {

	var myReg = new RegExp(/^[a-zA-Z\-']*$/);
	return myReg.test(myStr);

}


function IsStringOk(myStr) {

	var myReg = new RegExp(/^[\d\w-\s'"!\?\/\(\)\^°@\$£,;\.:%&]*$/);
	return myReg.test(myStr);

}

function IsMailOk(myStr) {

	var myReg = new RegExp(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/);
	return myReg.test(myStr);

}

function IsHourOk(myStr) {

	var myReg = new RegExp(/^([01][0-9]|2[0-3]):([0-5][0-9])$/);
	return myReg.test(myStr);

}

function IsNumOk(myNum) {

	var myReg = new RegExp(/^[0-9]+$/);
	return myReg.test(myNum);

}

function IsNumDec(myNum) {

	var myReg = new RegExp(/^[0-9][,.]+$/);
	return myReg.test(myNum);

}

function IsCapOk(myNum) {

	var myReg = new RegExp(/^\d{5}$/);
	return myReg.test(myNum);

}

function IsValidDate(str_date_form,str_date_now) {
	
	var day_form = str_date_form.substring(0,2);
	var month_form = str_date_form.substring(3,5);
	var year_form = str_date_form.substring(6,10);
	var date_form = new Date(month_form+'/'+day_form+'/'+year_form);
	
	var day_now = str_date_now.substring(0,2);
	var month_now = str_date_now.substring(3,5);
	var year_now = str_date_now.substring(6,10);
	var date_now = new Date(month_now+'/'+day_now+'/'+year_now);
	
	if (date_form < date_now) {
		return false;
	} else {
		return true;
	}
}

function IsDateOk(dateStr) {
	
	var datePat = /^(\d{2})(\/|-)(\d{2})(\/|-)(\d{4})$/; //viene accettata anche con i trattini
	var matchArray = dateStr.match(datePat);
	
	if (matchArray == null) {
		return false;
	}
	
	day = matchArray[1]; 
	month = matchArray[3];
	year = matchArray[5];
	
	if (month < 1 || month > 12) { 
		return false;
	}
	
	if (day < 1 || day > 31) {
		return false;
	}
	
	if ((month==4 || month==6 || month==9 || month==11) && day==31) {
		return false;
	}
	
	if (month == 2) { 
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day > 29 || (day==29 && !isleap)) {
			return false;
		}
	}
	return true; // tutto ok
}

function IsPswOk(myStr) {

	var myReg = new RegExp(/^[\da-zA-Z]{8,16}$/);
	return myReg.test(myStr);

}


function IsMailOk(myStr) {

	var myReg = new RegExp(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/);
	return myReg.test(myStr);

}


function isDate(dateStr) {

var datePat = /^(\d{2})(\/|-)(\d{2})(\/|-)(\d{4})$/; //viene accettata anche con i trattini
var matchArray = dateStr.match(datePat);

if (matchArray == null) {
return false;
}

day = matchArray[1]; 
month = matchArray[3];
year = matchArray[5];

if (month < 1 || month > 12) { 
return false;
}

if (day < 1 || day > 31) {
return false;
}

if ((month==4 || month==6 || month==9 || month==11) && day==31) {

return false;
}

if (month == 2) { 
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
return false;
}
}
return true; // tutto ok
}	


function IsNumeric(strString)
   {
   var strValidChars = "0123456789";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }



function checkFormSegnalaLocale() {
    var regione = document.getElementById("listRegione").value;
    var nomeLocale = document.getElementById("nomeLocale").value;
    var indirizzo = document.getElementById("indirizzo").value;
    var citta = document.getElementById("citta").value;
    var telefono1 = document.getElementById("telefono1").value;
    var telefono2 = document.getElementById("telefono2").value;
    var email = document.getElementById("email").value;
    var descrizione = document.getElementById("descrizione").value;
    var radioPrivacy = document.getElementsByName("radioPrivacy");
    
    var bool = true;
    var msg = "";

    if (regione == 0) {
        bool = false;
        msg += "Devi selezionare una regione\n";
    }
    
    if (nomeLocale == "") {
        bool = false;
        msg += "Devi inserire il nome del locale\n";
    }
    
    if (indirizzo == "") {
        bool = false;
        msg += "Devi inserire un indirizzo\n";
    }
    
    if (citta == "") {
        bool = false;
        msg += "Devi inserire una citta\n";
    }
    
    if (telefono1 == "" || telefono2 == "") {
        bool = false;
        msg += "Devi inserire un numero di telefono\n";
    }
    else {
        if (!IsNumeric(telefono1) || !IsNumeric(telefono2)) {
            bool = false;
            msg += "Il campo Telefono può contenere solo valori numerici!\n";
        }
    }
    
    if(!IsMailOk(email) && email != "") {
        bool = false;
        msg += "Formato email non corretto!\n";
    }
    
    if (descrizione == "") {
        bool = false;
        msg += "Devi inserire una descrizione\n"; 
    }
    
    if (!radioPrivacy[0].checked) {
        bool = false;
        msg += "Non hai acconsentito al trattamento dei dati!\n";
    }
    
    if (!bool) {
        alert(msg);
    }
    else {
        alert("Grazie della tua segnalazione! Sarai avvertita via email della pubblicazione.");
    }
       
    return bool;
}

function clickAnnulla() {
    window.location.reload(true);
    return false;
}

/*function setLatLng(location) {
    var geocoder;
    var lat;
    var lng;
    var place;
    
    if (GBrowserIsCompatible()) {
        geocoder = new GClientGeocoder();
        geocoder.getLocations(location, function(response){
             if(response){	         
                 try {
                    place = response.Placemark[0];
                 }
                 catch(error) {
                    alert("Indirizzo non trovato!");
                    return;
                 }
                 finally {
                    lat = place.Point.coordinates[1];
                    lng = place.Point.coordinates[0];
                    
                    //Icona personalizzata
                    var iconP = new GIcon(G_DEFAULT_ICON);
                    iconP.iconSize = new GSize(15, 41);
                    iconP.shadowSize = new GSize(0, 0);
                    iconP.image = '/images/pallino.gif';
          
                    var latlng = new GLatLng(lat,lng);
                    var marker = new GMarker(latlng, {icon:iconP});
                    map.setCenter(latlng, 11);
                    map.clearOverlays(); 
                    map.addOverlay(marker);
                 }
             }
	    });  
    }
}*/

function aggiungiCommento(location) {
    var loc = location;
    var boxCommento = document.getElementById("boxAggCommento").style.display;
    
    if (boxCommento == "none") {
       document.getElementById("boxAggCommento").style.display = "block";
       document.getElementById("txtNome").value = "";
       document.getElementById("txtEmail").value = "";
       document.getElementById("insCommento").value = ""; 
    }
    
    return false;
}

function chiudiBoxCommento() {
    document.getElementById("boxAggCommento").style.display = "none";
}

function inviaCommento(idS,locale,idAP) {
    var nome = document.getElementById("txtNome").value;
    var mail = document.getElementById("txtEmail").value;
    var commento = document.getElementById("insCommento").value;
    
    var msg = "";
    
    if (nome == "") {
        msg += "Non hai inserito il tuo nome\n";     
    }
    
    if(mail == "") {
        msg += "Non hai inserito la tua email\n" 
    }
    else {
        if (!IsMailOk(mail)) {
            msg += "Formato email non corretto!\n";
        } 
    }
    
    if(commento == "") {
        msg += "Devi inserire un commento\n"; 
    }
    
    if(msg == "") {    
        $.get("ajaxCall/inserisciCommento.aspx?nome=" + nome + "&email=" + mail + "&commento=" + commento + "&idS=" + idS + "&locale=" + locale + "&idAP=" + idAP, function(data){
            //alert("Data Loaded: " + data);
            //window.location.reload(true);
            if (data == 0) {
                document.getElementById("boxAggCommento").style.display = "none";
                alert("Grazie per aver inviato il tuo commento!"); 
            }
        });
    }
    else {
        alert(msg); 
    }
}