var lngWND_Confirm_Domanda_Inizio = 'Sei sicuro di voler cancellare quest'; // lasciare lo spazio per l'ultima vocale var lngWND_Confirm_Domanda_Fine = 'e tutti i dati relativi?'; var lngValidate_Password = 'I due campi contenenti la nuova password non corrispondono!\nInserire la password corretta!'; var lngValidate_Campi = 'Il campo "'; var lngValidate_Date_Errore = '" non e\' valido, inserire una data nel formato gg/mm/aaaa'; var lngValidate_Int_Errore = '" non e\' valido, inserire un valore numerico'; var lngValidate_Int_Errore_Min = '" non e\' valido, inserire un valore superiore a '; var lngValidate_Int_Errore_Max = '" non e\' valido, inserire un valore inferiore a '; var lngValidate_Email_Errore = '" non e\' valido, inserire un email valida'; var lngValidate_Text_Errore_Min = '" non e\' valido, inserire almeno '; var lngValidate_Text_Errore_Max = '" non e\' valido, sono consentiti al massimo '; var lngValidate_Text_Caratteri = ' caratteri!'; var lngValidate_Checkbox_Errore = 'Prima di continuare e\'necessario accettare '; var lngValidate_Checkbox_Limit = 'Selezionare almeno un elemento in '; var lngValidate_Checkbox_Libera = 'Inserire un valore nel campo ALTRO di '; var lngValidate_Query_Errore = 'Prima di continuare e\' necessario selezionare una '; var lngValidate_Ext_Errore = '" contiene un file con estensione non valida.\nSono permessi i formati: '; var lngValidate_Select_Errore = 'Selezionare un valore valido per il campo '; var lngValidate_Select_Linear = 'Selezionare per ogni colonna solo un valore da 1 a ' var lngValidate_Select_Linear_Libera = 'Inserire un valore nel campo ALTRO di ' var lngValidate_Radio_Errore = 'E\'necessario selezionare almeno un valore in '; var lngValidate_Radio_Errore_Libera = 'Inserire un valore nel campo ALTRO di ' var lngValidate_Radio_Errore_Valore_Inizio = 'Per continuare e\'necessario selezionare il valore '; var lngValidate_Radio_Errore_Valore_Medio = ' nel campo '; function validate(act,strData) // owner version { var i, bolModifica, arrData, arrInput; var ret = true; // Inizializzo i parametri per evitare errori if (!(strData)) { strData = '' // In caso siano passati più parametri li splitto } else if (strData.indexOf('|') >= 0) { arrData = strData.split('|'); } // Determino la modalità di esecuzione if (act.indexOf('_modifica') >= 0) { bolModifica = true; } else { bolModifica = false; } switch (act) { // validate area amministrativa default: // salto il controllo per i bottoni if (act.indexOf('_button') >=0) break; var arrInput = document.getElementsByTagName('input'); for (i = 0;i < arrInput.length; i++) { if ((ret) && (arrInput[i].id.indexOf('_titolo') >= 0) && (arrInput[i].id.indexOf('_titolo_') < 0)) { ret = validate_text(arrInput[i].id, 'TITOLO', 1, -1); } if ((ret) && (arrInput[i].id.indexOf('_nome') >= 0)) ret = validate_text(arrInput[i].id, 'NOME' , 1, -1); if ((ret) && (arrInput[i].id.indexOf('_data') >= 0)) ret = validate_date(arrInput[i].id, 'DATA' , false); if ((ret) && (arrInput[i].id.indexOf('_allegato_') >= 0)) ret = validate_ext (arrInput[i].id, 'ALLEGATO', true, arrData[1]); if ((ret) && (arrInput[i].id.indexOf('_immagine_') >= 0)) ret = validate_ext (arrInput[i].id, 'IMMAGINE', true, arrData[0]); if (!ret) break; } break; case 'pwd_change' : if (ret) ret = validate_text('password_new' , 'NUOVA PASSWORD', 4, -1); if (ret) { var pwd1 = document.getElementById('password_new'); var pwd2 = document.getElementById('password_new2'); if (pwd1.value!=pwd2.value) { alert(lngValidate_Password); pwd1.value=''; pwd2.value=''; ret = false; } } break; case 'newsletter': if (ret) ret = validate_email('email', 'EMAIL', false); break; } return ret; } function WND_confirm(mod, snd, cod, strTxt, strSex, strUrl) // v1.0 { // Faccio un parsing preliminare dei parametri per configurarli correttamente if (!strTxt) strTxt = snd.toUpperCase(); if (!strSex) strSex = 'o'; if (!strUrl) strUrl = 'DoCMD.asp?mod=' + mod + '&snd=' + snd + '&act=cancella&id=' + cod; // Faccio la richiesta ed eventualmente il redirect if (confirm(lngWND_Confirm_Domanda_Inizio + strSex + ' ' + strTxt + ' ' + lngWND_Confirm_Domanda_Fine)) { location.href = strUrl; } return false; } function WND_open_small(link,h,w,extra,ev) // v1.3 { var ev = ev || window.event; // gets the event in ie or ns var kCode = ev.keyCode || ev.which; // gets the keycode in ie or ns if ((!ev.shiftKey) && (link.indexOf('print.php') < 0)) { fb.loadAnchor(link, 'width: ' + (w+20) + ' height: ' + h + ' showClose: false'); return false; } var left,top,extra,name; if (!extra) extra = 'scrollbars=yes'; extra += ', '; w += 20; if (h>720) { h = 720; } left=(screen.width-w) /2; top =(screen.height-h)/3; name = link; name = name.replace('/','_'); name = name.replace('.','_'); name = name.replace('-','_'); name = name.substr(0,name.indexOf("_")); window.open(link, name, extra + 'left='+left+', top='+top+', height='+h+',width='+w); return name; } function WND_open_image(link,h,w) // owner versione v1.0 { var WND; var left,top,h,w; h = h+50; w = w+50; left=(screen.width-w) /2; top =(screen.height-h)/3; WND = window.open('','view_eidongroup','left='+left+', top='+top+', height='+h+',width='+w); WND.document.write('/title></head>'); WND.document.write('<body bgcolor="#FFFFFF">'); WND.document.write('<table height="100%" width="100%"><tr align="center" valign="middle"><td>'); WND.document.write('<img src="'+link+'">'); WND.document.write('</td></tr></table></body></html>'); WND.document.close(); } function WND_refresh(href, bolMain) // v1.2 { if (!bolMain) bolMain = false; if (!bolMain) { if ((window.parent) && (window.parent.fb)) { if ((href=='') || (href==null)) window.parent.location.href=window.parent.location.href; else window.parent.location.href=href; //fb.end(); } else { if (window.opener && !window.opener.closed) { if ((href=='') || (href==null)) window.opener.location.href=window.opener.location.href; else window.opener.location.href=href; } self.close(); } } else { if ((!href) || (href=='')) { window.history.back(); } else { window.location.href=href; } } } function validate_date(objName, name, bolEmpty) // v1.2 { var obj = document.getElementById(objName); if (obj) { if (obj.value == '') ret = bolEmpty; else { var ret = true; var tmp=obj.value.split('/'); if (tmp.length!=3) ret = false else { if ((tmp[0]<=0) || (tmp[0]>31)) ret = false; if ((tmp[1]<=0) || (tmp[1]>12)) ret = false; if ((tmp[2]<=1900) || (tmp[2]>2100)) ret = false; } } if (!(ret)) alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Date_Errore); return ret; } } function validate_sdate(date) // v1.0 { // Modificare la riga sottostante se date='' NON e'consentito if (date=='') return true else { var tmp=date.split('/'); if (tmp.length!=2) return false else { if ((tmp[0]<=0) || (tmp[0]>12)) return false; if ((tmp[1]<=2000) || (tmp[1]>2100)) return false; } return true; } } function validate_int(objName, name, min_val, max_val, bolEmpty) // v1.2 { if (!bolEmpty) bolEmpty = true; var obj = document.getElementById(objName); if (obj) { var ret = true; var re = new RegExp("^(\\d+[\\.,]?\\d*)$"); var m = re.exec(obj.value); if (m == null) { if ((obj.value == "") && (bolEmpty)) { } else { alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Int_Errore); ret = false; } } else { if ((obj.value < min_val) && (min_val != -1)) { alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Int_Errore_Min + min_val + '!'); ret = false; } if ((obj.value > max_val) && (max_val != -1)) { alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Int_Errore_Max + max_val + '!'); ret = false; } } return ret; } return false; } function validate_email(objName, name, bolEmpty) // v1.2 { var re = /(^[a-z0-9]([a-z0-9_\.-]+)[a-z0-9])@[a-z0-9]([a-z0-9_\.-]+)[a-z0-9]\.([a-z]{2,4})$/i; var obj = document.getElementById(objName); if (obj) { if (re.exec(obj.value) != null) return true; else { if (bolEmpty) return true; { alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Email_Errore); return false; } } } else return true; } function validate_text(objName, name, min_len, max_len) // v1.1 { var obj = document.getElementById(objName); if (obj) { if ((obj.value.length < min_len) && (min_len != -1)) { alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Text_Errore_Min + min_len + lngValidate_Text_Caratteri); return false; } if ((obj.value.length > max_len) && (max_len != -1)) { alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Text_Errore_Max + max_len + lngValidate_Text_Caratteri); return false; } } return true } function validate_checkbox(objName, name, bolFacoltativa, intLimitMin, intLimitMax) // v1.0 { if (!bolFacoltativa) bolFacoltativa = false; if ((!intLimitMin) && (!intLimitMax)) { var obj = document.getElementById(objName); if (obj) { if (obj.checked) { return true; } else { alert(lngValidate_Checkbox_Errore + name.toUpperCase()); return false; } } else { return true; } } else { var i = 0, intCount = 0; var obj = document.getElementById(objName + '_' + i); while (obj) { if (obj.checked) { var objTmp = document.getElementById(obj.id + '_libera'); if ((objTmp) && (objTmp.value.length == 0)) { alert(lngValidate_Checkbox_Libera + name.toUpperCase()); return false; } intCount++; } i++; var obj = document.getElementById(objName + '_' + i); } if (((intLimitMin > intCount) || (intLimitMax < intCount)) && (!bolFacoltativa)) { alert(lngValidate_Checkbox_Limit + name.toUpperCase()); return false; } else { return true; } } } function validate_query(name, match) // v1.0 { var querystring = window.location.search; if (querystring.indexOf(match + '=') == -1) { alert(lngValidate_Query_Errore + name.toUpperCase()); return false; } else { return true; } } function validate_ext(objName, name, bolEmpty, ext) // v1.0 { var obj = document.getElementById(objName); if (obj) { var i, ret = false; var fileName = obj.value; var ext_list = ext.split(','); if (fileName == '') { ret = bolEmpty; } else { fileName = (fileName.substring(fileName.lastIndexOf('.') + 1,fileName.length)).toLowerCase(); for (i = 0 ; i < ext_list.length ; i++) { if (ext_list[i] == fileName) ret = true; } } if (!(ret)) alert(lngValidate_Campi + name.toUpperCase() + lngValidate_Ext_Errore + ext); return ret; } else { return true; } } function validate_select(objName, name, strError, intLinear) { var obj, ret = false; if (!intLinear) { obj = document.getElementById(objName); if (obj) { if (obj.options[obj.selectedIndex].value == strError) { alert(lngValidate_Select_Errore + name.toUpperCase()); return false; } else return true; } } else { var i, j, objTmp, objOld = ''; var arrCheck = new Array(); // Azzero tutto il vettore di riferimento for (i = 0; i <= intLinear; i++) { arrCheck[i] = 0; } i = j = 0; for (i = 0; obj = document.getElementById(objName + '_' + i); i++) { if (i != j) i = j; if (obj.id != objOld) { objOld = obj.id; if (obj.selectedIndex > 0) { // verifico se c'蠩l campo libero per i sondaggi var tmpNome = objName.substr(0,objName.length - 2) + '_' + i + '_libera'; objTmp = document.getElementById(tmpNome); if ((objTmp) && (objTmp.value.length == 0)) { alert(lngValidate_Select_Linear_Libera + name.toUpperCase()); return false; } // Controllo per evitare che ci siano due valori uguali if (arrCheck[obj.options[obj.selectedIndex].value] == 1) { arrCheck[obj.options[obj.selectedIndex].value] = 0; alert(lngValidate_Select_Linear + intLinear + ' nella domanda ' + name.toUpperCase()); return false; } else { arrCheck[obj.options[obj.selectedIndex].value] = 1; } } j++; } } for (i = 1; i <= intLinear; i++) { if (arrCheck[i] == 1) { ret = true; } } if (!ret) { alert(lngValidate_Select_Linear + intLinear + ' nella domanda ' + name.toUpperCase()); return false; } return true; } } function validate_radio(objName, name, strConfirm, bolFacoltativa) { if (!bolFacoltativa) bolFacoltativa = false; var ret = false, i = 0; var obj = document.getElementById(objName + '_' + i); var objTmp = document.getElementById(objName + '_libera'); while (obj) { if (obj.checked) { ret = true; break; } i++; obj = document.getElementById(objName + '_' + i); } if (!(ret)) { // verifico se c'蠩l campo libero per i sondaggi if ((objTmp) && (objTmp.value.length == 0)) { ret = true; } else { if (!bolFacoltativa) { alert(lngValidate_Radio_Errore + name.toUpperCase()); ret = false; } else { ret = true; } } } else { if (!objTmp) { var tmpNome = objName.substr(0,objName.length - 2) + '_' + i + '_libera'; objTmp = document.getElementById(tmpNome); } if ((objTmp) && (objTmp.value.length == 0)) { //alert(lngValidate_Radio_Errore_Libera + name.toUpperCase()); //ret = false; } else { if ((strConfirm) && (obj.value != strConfirm)) { alert(lngValidate_Radio_Errore_Valore_Inizio + strConfirm.toUpperCase() + lngValidate_Radio_Errore_Valore_Medio + name.toUpperCase()); ret = false; } } } return ret; } function datediff(firstDate, seconDate) { var one_day=1000*60*60*24; var arrFirst = firstDate.split('/'); var arrSecon = seconDate.split('/'); $tmpDiff = 0; if ((arrFirst.length == 3) && (arrSecon.length == 3)) { var firstReal = new Date(arrFirst[2], arrFirst[1], arrFirst[0]); var seconReal = new Date(arrSecon[2], arrSecon[1], arrSecon[0]); return ((firstReal.getTime() - seconReal.getTime()) / one_day) } else { return null; } }