var CN_OBBLIG = 1; var CN_INTEGER = 2; var CN_FLOAT = 4; var CN_DATA = 8; var CN_TIME = 16; var CN_MAIL = 32; var CN_URL = 64; var CN_ALFA = 128; var S_OBBLIG = "Please fill in the indicated field"; var S_DATA = "Data non valida\nformato accettato GG/MM/AAAA"; var S_DATA2 = "Data non valida\nformato accettato GG/MM/AAAA (anno > 1990)"; var S_TIME = "ora non valida\nformati accettati HH:MM - HH.MM"; var S_MAIL = "E-Mail address not valid"; function Control2(obj) { var isOk=0; for (n1=0; n1< obj.length; n1++) { if (obj[n1].checked) isOk++; } if (!isOk) { obj[0].focus(); alert(S_OBBLIG);// + obj.name + "\" field."); return false; } return true; } function Control(obj, flags) { // true = OK if (flags & CN_OBBLIG) { if (obj.value == "") { obj.focus(); alert(S_OBBLIG);// + obj.name + "\" field."); return false; } } if (flags & CN_DATA) { var checkStr = obj.value; if (checkStr == "") return true; if (checkStr.length < 10 || checkStr.charAt(2) != "/" || checkStr.charAt(5) != "/") { alert(S_DATA); obj.focus(); return false; } var nGG, nMM, nAA; nGG = checkStr.charAt(0)+checkStr.charAt(1); nMM = checkStr.charAt(3)+checkStr.charAt(4); nAA = checkStr.charAt(6)+checkStr.charAt(7)+checkStr.charAt(8)+checkStr.charAt(9); if (nMM < 0 || nMM > 12) { alert(S_DATA); obj.focus(); return false; } if (nAA < 1990) { alert(S_DATA2); obj.focus(); return false; } // verifica i giorni nel mese var GiorniNelMese = 31; if (nMM == 2) GiorniNelMese = (nAA % 4) ? 28 : 29; if (nMM == 4 || nMM == 6 || nMM == 9 || nMM == 11) GiorniNelMese = 30; if (nGG < 0 || nGG > GiorniNelMese) { alert(S_DATA); obj.focus(); return false; } } if (flags & CN_TIME) { var checkStr = obj.value; if (checkStr == "") return true; if (checkStr.length < 5 || (checkStr.charAt(2) != ":" && checkStr.charAt(2) != ".")) { alert(S_TIME); obj.focus(); return false; } var nHH, nMM; nHH = checkStr.charAt(0)+checkStr.charAt(1); nMM = checkStr.charAt(3)+checkStr.charAt(4); if (nHH < 0 || nHH > 23) { alert(S_TIME); obj.focus(); return false; } if (nMM < 0 || nMM > 59) { alert(S_TIME); obj.focus(); return false; } } if (flags & CN_INTEGER) { var checkOK = "0123456789-"; var checkStr = obj.value; var allValid = true; var decPoints = 0; var allNum = ""; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } allNum += ch; } if (!allValid) { obj.focus(); alert("Campo non numerico");// \"" + obj.name + "\" field."); return (false); } } if (flags & CN_ALFA) { var checkOK = "qazwsxedcrfvtgbyhnujmiklpoQAZWSXEDCRFVTGBYH-_NUJMIKOLPÈÀ.:;,\"ÙÒèòà ù \'"; var checkStr = obj.value; var allValid = true; var decPoints = 0; var allNum = ""; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } allNum += ch; } if (!allValid) { obj.focus(); alert("Deve essere un campo non numerico");// \"" + obj.name + "\" field."); return (false); } } if (flags & CN_FLOAT) { var checkOK = "0123456789-,"; var checkStr = obj.value; var allValid = true; var decPoints = 0; var allNum = ""; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } if (ch == ",") { allNum += "."; decPoints++; } else allNum += ch; } if (!allValid) { obj.focus(); alert("Campo non numerico");// \"" + obj.name + "\" field."); return (false); } if (decPoints > 1) { obj.focus(); alert("Campo non numerico");// \"" + obj.name + "\" field."); return (false); } } if (flags & CN_MAIL) { if (obj.value != "") { var bAt=false; var bTrovato=false; var checkStr = obj.value; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); if (ch == "@") { bAt = true; } if (bAt == true) { if (ch == "." && i < checkStr.length-1) { bTrovato = true; } } } if (!bTrovato) { obj.focus(); alert(S_MAIL);// + obj.name + "\" field."); return false; } } } if (flags & CN_URL) { if (obj.value != "") { var bTrovato=false; var checkStr = obj.value; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); if (ch == "." && i < checkStr.length-1) { bTrovato = true; } } if (!bTrovato) { obj.focus(); alert("Indirizzo Web non valido");// + obj.name + "\" field."); return false; } } } return true; }