/*Foglio Javascript per il controllo e la validazione di form registrazione utente*/
var esito = new Array();

function check(checkType, val) {

    //Se il controllo è Nome
    if (checkType == "Nome") {

        //Controlla che non è vuoto
        if (val.length == 0) { document.getElementById('eNome').innerHTML = "(Campo Obbligatorio)"; /*document.gestione.Nome.focus();*/ esito[0] = false; }
        else { document.getElementById('eNome').innerHTML = ""; esito[0] = true; }

        //Controlla che non contenga solo spazi
        soloSpazi = true;
        for (i = 0; i < val.length; i++) {
            if (val[i] != " ") soloSpazi = false;
        }
        if (soloSpazi) { document.getElementById('eNome').innerHTML = "(Campo Obbligatorio)"; /*document.gestione.Nome.focus();*/ esito[0] = false; }
        

    }
    //Se il controllo è Cognome
    else if (checkType == "Cognome") {

        //Controlla che non è vuoto
        if (val.length == 0) { document.getElementById('eCognome').innerHTML = "(Campo Obbligatorio)"; /*document.gestione.Cognome.focus();*/ esito[1] = false; }
        else { document.getElementById('eCognome').innerHTML = ""; esito[1] = true; }

        //Controlla che non contenga solo spazi
        soloSpazi = true;
        for (i = 0; i < val.length; i++) {
            if (val[i] != " ") soloSpazi = false;
        }
        if (soloSpazi) { document.getElementById('eCognome').innerHTML = "(Campo Obbligatorio)"; /*document.gestione.Cognome.focus();*/ esito[1] = false; }

    }
//     //Se il controllo è Email
//    else if (checkType == "Email") {

//        //Controlla che non è vuoto
//        if (val.length == 0) { document.getElementById('eEmail').innerHTML = "(Campo Obbligatorio)"; document.gestione.Email.focus(); esito[2] = false; }
//        else { document.getElementById('eEmail').innerHTML = ""; esito[2] = true; }

//        //Controlla che non contenga solo spazi
//        soloSpazi = true;
//        for (i = 0; i < val.length; i++) {
//            if (val[i] != " ") soloSpazi = false;
//        }
//        if (soloSpazi) { document.getElementById('eEmail').innerHTML = "(Campo Obbligatorio)"; document.gestione.Email.focus(); esito[2] = false; }

//    }
    

    

    //Se il controllo è Citta
    else if (checkType == "Citta") {

        //Controlla che non è vuoto
        if (val.length == 0) { document.getElementById('eCitta').innerHTML = "(Campo Obbligatorio)"; /*document.gestione.Citta.focus();*/ esito[3] = false; }
        else { document.getElementById('eCitta').innerHTML = ""; esito[3] = true; }

        //Controlla che non contenga solo spazi
        soloSpazi = true;
        for (i = 0; i < val.length; i++) {
            if (val[i] != " ") soloSpazi = false;
        }
        if (soloSpazi) { document.getElementById('eCitta').innerHTML = "(Campo Obbligatorio)"; /*document.gestione.Citta.focus();*/ esito[3] = false; }

    }
    
    //Se il controllo totale
    else if (checkType == "All") {

        //resetta l'array esito tutto a true;
        for (i = 0; i < 3; i++) {
            esito[i] = true; ;

        }

        //=== AVVIA IL CONTROLLO TOTALE )======
        
        //Controlla nome
        check('Nome', document.gestione.Nome.value)
        //Controlla cognome
        check('Cognome', document.gestione.Cognome.value)

       if (document.gestione.Email.value.length == 0 || document.getElementById('TakenOrNot').innerHTML.length > 0) {
            esito[2] = false;
            document.gestione.Email.focus();
        }
        else
            esito[2] = true;

        esitoGlobale=true;
        for (i = 0; i < 3; i++) {
            if (esito[i] == false) { esitoGlobale = false;}

        }
        
       
        return esitoGlobale;
    }

    
    
}

/**************************************
Controllo del Codice Fiscale
Linguaggio: JavaScript
***************************************/

function ControllaCF(cf) {
    var validi, i, s, set1, set2, setpari, setdisp;
    var nonValido = false;

    cf = cf.toUpperCase();
    if (cf.length != 16) nonValido = true;
    
    validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    for (i = 0; i < 16; i++) {
        if (validi.indexOf(cf.charAt(i)) == -1) nonValido = true;
            
    }
    
    set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
    setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
    s = 0;
    for (i = 1; i <= 13; i += 2) s += setpari.indexOf(set2.charAt(set1.indexOf(cf.charAt(i))));
    for (i = 0; i <= 14; i += 2) s += setdisp.indexOf(set2.charAt(set1.indexOf(cf.charAt(i))));
    if (s % 26 != cf.charCodeAt(15) - 'A'.charCodeAt(0)) nonValido = true;



    if (nonValido == true) { document.getElementById('eCodiceFiscale').innerHTML = "(Codice Fiscale non valido)"; document.gestione.CodiceFiscale.focus(); esito[4] = false; }
    else { document.getElementById('eCodiceFiscale').innerHTML = ""; esito[4] = true; }
}

/*****************************************
Controllo della Partita I.V.A.
Linguaggio: JavaScript
******************************************/

function ControllaPIVA(pi) {
    var nonValido = false;

    if (pi.length != 11) nonValido = true;
    validi = "0123456789";
    for (i = 0; i < 11; i++) {
        if (validi.indexOf(pi.charAt(i)) == -1)nonValido = true;
    }
    s = 0;
    for (i = 0; i <= 9; i += 2)
        s += pi.charCodeAt(i) - '0'.charCodeAt(0);
    for (i = 1; i <= 9; i += 2) {
        c = 2 * (pi.charCodeAt(i) - '0'.charCodeAt(0));
        if (c > 9) c = c - 9;
        s += c;
    }
    if ((10 - s % 10) % 10 != pi.charCodeAt(10) - '0'.charCodeAt(0))
        nonValido = true;

    if (nonValido == true) { document.getElementById('ePartitaIva').innerHTML = "(Partita IVA non valida)"; document.gestione.PartitaIVA.focus(); esito[5] = false; }
    else { document.getElementById('ePartitaIva').innerHTML = ""; esito[5] = true; }
    
}

/*****************************************
Selezione Deselezione Tutti
******************************************/

function selectionAll(actionFlag) {

    if (actionFlag) {
        for (i = 1; i <= 25; i++) {
            if (document.getElementById(i + '_ch')) {
                document.getElementById(i + '_ch').checked = true;
            }
        }
    }

    else
    {
        
         for (i = 1; i <= 25; i++) {
             if (document.getElementById(i + '_ch')) {
                 document.getElementById(i + '_ch').checked = false;
                }
        
        }
     }


 }

 /*****************************************
 Abilita Gruppo
 ******************************************/
 abilitato = false;
 function groupEnabled(group, actionFlag) {

     if (group == "newsletter") {

         if (abilitato) {
             for (i = 1; i <= 25; i++) {
                 if (document.getElementById(i + '_ch')) {
                     document.getElementById(i + '_ch').disabled = true;
                 }
             }
             document.getElementById('provincia').disabled = true;
             document.getElementById('Professione').disabled = true;
             abilitato = false;
         }

         else {

             for (i = 1; i <= 25; i++) {
                 if (document.getElementById(i + '_ch')) {
                     document.getElementById(i + '_ch').disabled = false;
                 }
                 document.getElementById('provincia').disabled = false;
                 document.getElementById('Professione').disabled = false;

             }
             abilitato = true;
         }


         if (document.getElementById('provincia2').disabled == false) document.getElementById('provincia').disabled = true;
         
         
     }
     else if (group == "acquisti") {

         if (document.getElementById('cf').disabled == true) document.getElementById('cf').disabled = false;
         else document.getElementById('cf').disabled = true;

         if (document.getElementById('PartitaIVA').disabled == true) document.getElementById('PartitaIVA').disabled = false;
         else document.getElementById('PartitaIVA').disabled = true;

         if (document.getElementById('stato').disabled == true) document.getElementById('stato').disabled = false;
         else document.getElementById('stato').disabled = true;

         if (document.getElementById('Cap').disabled == true) document.getElementById('Cap').disabled = false;
         else document.getElementById('Cap').disabled = true;

         if (document.getElementById('Citta').disabled == true) document.getElementById('Citta').disabled = false;
         else document.getElementById('Citta').disabled = true;

         if (document.getElementById('Indirizzo').disabled == true) document.getElementById('Indirizzo').disabled = false;
         else document.getElementById('Indirizzo').disabled = true;

         if (document.getElementById('civico').disabled == true) document.getElementById('civico').disabled = false;

     }
     else if (group == "aree") {
            
         if (document.getElementById('provincia2').disabled == true) document.getElementById('provincia2').disabled = false;
         else document.getElementById('provincia2').disabled = true;

         if (document.getElementById('novita_ch').disabled == true) document.getElementById('novita_ch').disabled = false;
         else document.getElementById('novita_ch').disabled = true;

         if (document.getElementById('scuola_ch').disabled == true) document.getElementById('scuola_ch').disabled = false;
         else document.getElementById('scuola_ch').disabled = true;

         if (document.getElementById('universita_ch').disabled == true) document.getElementById('universita_ch').disabled = false;
         else document.getElementById('universita_ch').disabled = true;

         if (document.getElementById('fr_ch').disabled == true) document.getElementById('fr_ch').disabled = false;
         else document.getElementById('fr_ch').disabled = true;

         if (document.getElementById('provincia').disabled == false) document.getElementById('provincia2').disabled = true;

     }
    

 }

 function mostra(id) {
     if (document.getElementById(id).style.display == "none") {
         document.getElementById(id).style.display = ""
     }
     else {
         document.getElementById(id).style.display = "none"
     }
 }

 function disableCF_PIVA(selectedIndex) {

     if (selectedIndex != "11") {
         document.getElementById('cf').disabled = true;
         document.getElementById('PartitaIVA').disabled = true;
     }
     else {
        
         document.getElementById('cf').disabled = false;
         document.getElementById('PartitaIVA').disabled = false;
     }
 }

 function abilitaProv(param) {

     if (param == "aree") {
         //Controlla che aree sia checkato  2 sia disabilitato in tal caso abilitalo
         if ((document.getElementById('aree_ch').checked == true)  && (document.getElementById('provincia2').disabled == true))
            document.getElementById('provincia2').disabled = false;
     }
     
     if (param == "news") {
           //Controlla che news sia checkato e provincia sia disabilitato in tal caso abilitalo
         if ((document.getElementById('news_ch').checked == true) && (document.getElementById('provincia').disabled == true))
            document.getElementById('provincia').disabled = false;
    }

    
     
 }



