﻿// JScript File
//l'ho chiamato così per differenziarlo da quello di trim presente su
//XmlObj.js
function myTrim(stringa) { 
    while (stringa.substring(0, 1) == " ") { 
        stringa = stringa.substring(1, stringa.length); 
    } 
    while (stringa.substring(stringa.length - 1, stringa.length) == " ") { 
        stringa = stringa.substring(0, stringa.length - 1); 
    } 
    return stringa; 
}


function detectBrowser(){
    var browser=navigator.appName;
    var b_version=navigator.appVersion;
    var version=parseFloat(b_version);
	var browserName = getBrowserName(navigator);
	var browserVersion = getBrowserVersion(b_version);
	var browserVersionFull = getBrowserVersionFull(b_version);

}

function getBrowserNavigator(){
    var browser=navigator.appName;
    var b_version=navigator.appVersion;
    var result = browser + b_version;
    return result;
}

function getBrowserName(obj){ 
	var names = ""; 
	
	return obj.appName;
}
function getBrowserVersion(version){ 
	return parseFloat(version);
}

function getBrowserVersionFull(version){ 
	return version;
}


function visualizzaProprieta(obj){ 
    var names = ""; 
    for (var name in obj) names += name + "\n"; 
    document.getElementById(divDebug).innerHTML = names;
    //alert(names); 
}

function getAbruzzoSlide(){
    var browser=navigator.appName;
    var b_version=navigator.appVersion;
    var version=parseFloat(b_version);
    var browserName = getBrowserName(navigator);
	var browserVersion = getBrowserVersion(b_version);
	if (browserName == 'Opera'){
	    alert('La pagina richiesta non è compatibile con il tuo browser: per visualizzarla è necessario utilizzare Mozzilla Firefox, Internet Explorer oppure Safari');
	} else {
	    window.open("abruzzo/AbruzzoSlide.aspx");
	}
}


function getAllGallery(){
    var browser=navigator.appName;
    var b_version=navigator.appVersion;
    var version=parseFloat(b_version);
    var browserName = getBrowserName(navigator);
	var browserVersion = getBrowserVersion(b_version);
	if (browserName == 'Netscape') {
	    alert("Il nuovo browser Mozzilla Firefox 3.0 non visualizza correttamente la prima foto: nel caso in cui si verifichi il problema è possibile visualizzarla per ultima");
	} 
    dijit.byId('fromStore').show();
}

//esegue la verifica formale di un indirizzo e-mail
/*public emailVerificator(email) {
    var validate = false;
    if (email.matches("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$")) {
        validate = true;
    }
    return validate;
}*/

//verifica la correttezza formale della data inserita
function checkDate(value)
{
    var minAnno = 1902;
    var maxAnno = 2300;
    var errorMsg = "";
    // espressione regolare per la verifica della data
    regstringa = /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/;

    //la stringa non deve essere vuota altrimenti il controllo passa
    if(value != '') {
        if(regs = value.match(regstringa)) {
            if(regs[1] < 1 || regs[1] > 31) {
            errorMsg = "Giorno: " + regs[1] + " non validi";
        } else if(regs[2] < 1 || regs[2] > 12) {
            errorMsg = "Mese: " + regs[2] + " non valido";
        } else if(regs[3] < minAnno || regs[3] > maxAnno) {
            errorMsg = "L'anno " + regs[3] + " deve essere compreso tra l'anno " + minAnno + " e l'anno " + maxAnno;
        }
    } else {
        errorMsg = "Formato data non valido: " + value;
    }
}

if(errorMsg != "") {
    //alert(errorMsg);
    return false;
}
return true;
} 

function sleep(n) 
{ 
    var ora = new Date(); 
    var oraFine = ora.getTime() + (n*100); 
    while (true) { 
        ora = new Date(); 
        if (ora.getTime() > oraFine) return; 
    }
}


function verificaEmail(idCampo)
{
    EmailAddr = document.getElementById(idCampo).value;
    Filtro = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
    if (Filtro.test(EmailAddr))
        return true;
    else
    {
        return false;
    }
}


//todo: non considera i bisestili
function aggiungiGiorniAllaData(numGiorni){
    var data = new Date();
    var day = data.getDate() + parseInt(numGiorni);
    var toDay = data.getDate();
    var month = data.getMonth() + 1;
    var year = data.getFullYear();
    if (day > '31' && (month == '1' || month == '3' || month == '5' || month == '7' || month == '8' || month == '10'))
    {
        day = (data.getDate() + parseInt(numGiorni)) - 31;
        month = month + 1;
    }
    if (day > '30' && (month == '4' || month == '6' || month == '9' || month == '11'))
    {
        
        day = (data.getDate() + parseInt(numGiorni)) - 30;
        month = month + 1;
    }
    if (day > '28' && (month == '2'))
    {
        day = (data.getDate() + parseInt(numGiorni)) - 28;
        month = month + 1;
    }
    if (day > '31' && (month == '12'))
    {
        day = (data.getDate() + parseInt(numGiorni)) - 31;
        month = 1;
        year = year + 1;
    }
    if (parseInt(day) < 10){
        day = "0" + day;
    }
    if (parseInt(month) < 10){
        month = "0" + month;
    }
    var dateValue = day + "/" + month + "/" + year;
    return dateValue;
}

function setLocationHref(page) {
    // set the location path as local page name.
    window.location.href = page;
}
