function send(eTarget,operation,id,params)
{
    document.getElementById(eTarget).value ='op:' + operation + ';id:' + id + ';params:' + params;
    document.forms[0].submit();
}

function sendWithMessage(eTarget, operation, id, params, message) {
    if (confirm(message)) {
        document.getElementById(eTarget).value = 'op:' + operation + ';id:' + id + ';params:' + params;
        document.forms[0].submit();
    }
}

function IsNumeric(txtInput)
{   
   var sText = document.getElementById(txtInput).value
   var ValidChars = "0123456789.-";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
   { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
      {
         IsNumber = false;
      }
   }
   if (!IsNumber)
   {
        alert("Inserire valore numerico");
        document.getElementById(txtInput).focus();
        document.getElementById(txtInput).select();
   }
   return IsNumber;
}

function formatCurrency(txtInput) 
{
   //Verifica campo numerico
   var sText = document.getElementById(txtInput).value
   var ValidChars = "-0123456789.,";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
   { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
      {
         IsNumber = false;
      }
   }
   if (!IsNumber)
   {
        alert("Inserire valore numerico");
        document.getElementById(txtInput).focus();
        document.getElementById(txtInput).select();
        return false;
   }
   else
   {
   
        var strnumber;
        strnumber = String(document.getElementById(txtInput).value);
        strnumber = strnumber.replace(/\./g,"");

        var decimali =String("00");
        var numero="0";
        if (strnumber.indexOf(",") >-1)
        {
            
            var indexDa =strnumber.indexOf(",") + 1
            numero=strnumber.substring(0,indexDa-1);
            decimali=strnumber.substring(indexDa);
            if (decimali.indexOf(",") >-1) 
            {
                alert("Valore non valido!")
                document.getElementById(txtInput).focus();
                document.getElementById(txtInput).select();
                return false;
            }
            if (decimali.length < 2)
                decimali = decimali + "0";
        }
        else
        {
            numero=strnumber;
        }
        for (var i = 0; i < Math.floor((numero.length-(1+i))/3); i++)
                numero = numero.substring(0,numero.length-(4*i+3))+'.'+
                numero.substring(numero.length-(4*i+3));
        document.getElementById(txtInput).value = numero + "," + decimali
    }
    return true;
}

function formatMillesimi(txtInput) 
{
    var strnumber;
    strnumber = String(document.getElementById(txtInput).value);
    strnumber = strnumber.replace(/\./g,"");
    if (IsNumericText(strnumber))
    {
        var numero="0";
        numero=strnumber;
        for (var i = 0; i < Math.floor((numero.length-(1+i))/3); i++)
                numero = numero.substring(0,numero.length-(4*i+3))+'.'+
                numero.substring(numero.length-(4*i+3));
        //alert("2numero=" + numero);
        document.getElementById(txtInput).value = numero 
    }
    else
    {
        alert("Inserire valore intero senza virgola!");
        document.getElementById(txtInput).focus();
        document.getElementById(txtInput).select();
    }
    return true;
}

function isDate(txtInput) 
{

    var dateStr = String(document.getElementById(txtInput).value);
    //alert(dateStr)
    if (dateStr.length >0)
    {
        
        var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
        var matchArray = dateStr.match(datePat); // is the format ok?

        if (matchArray == null) 
        {
            alert("Inserire la data nel formato dd/mm/yyyy oppure dd-mm-yyyy.");
            document.getElementById(txtInput).focus();
            document.getElementById(txtInput).select();
            return false;
        }

        day = matchArray[1]; // p@rse date into variables
        month = matchArray[3];
        year = matchArray[5];

        if (month < 1 || month > 12) 
        { // check month range
            alert("Mese non valido.");
            document.getElementById(txtInput).focus();
            document.getElementById(txtInput).select();
            return false;
        }

        if (day < 1 || day > 31) 
        {
            alert("Giorno non valido.");
            document.getElementById(txtInput).focus();
            document.getElementById(txtInput).select();
            return false;
        }

        if ((month==4 || month==6 || month==9 || month==11) && day==31) 
        {
            alert("Il mese  "+month+" non ha 31 giorni!");
            document.getElementById(txtInput).focus();
            document.getElementById(txtInput).select();
            return false;
        }

        if (month == 2) 
        { // check for february 29th
            var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
            if (day > 29 || (day==29 && !isleap)) 
            {
                alert("Febbraio " + year + " non ha " + day + " giorni!");
                document.getElementById(txtInput).focus();
                document.getElementById(txtInput).select();
                return false;
            }
        }
    }
    return true; // date is valid
}

 function flipFlop(eTarget) {
    if (document.getElementById(eTarget).style.display=='')
    {
    	document.getElementById(eTarget).style.display='none';
    }
    else
    {
    	document.getElementById(eTarget).style.display='';
    }
}

