var aEventiFF = { "click": "click", "keyup": "keyup", "keydown": "keydown", "keypress": "keypress", "focus": "focus", "change": "change", "load": "DOMContentLoaded" } var aEventiIE = { "click": "onclick", "keyup": "onkeyup", "keydown": "onkeydown", "keypress": "onkeypress", "focus": "onfocus", "change": "onchange", "load": "DOMContentLoaded" } //VOID: Aggiunta sull'evento sEvento (label delle variabili precedenti) della funzione fFunzione all'oggetto oObj function aggiungiListener(sEvento, fFunzione, oObj) { if (oObj.addEventListener) { oObj.addEventListener(eval("aEventiFF." + sEvento), fFunzione, true); } else { oObj.attachEvent(eval("aEventiIE." + sEvento), fFunzione); } } //STRING: Estrazione dei caratteri dall'inizio della stringa sStr alla prima posizione del carattere sChar function substring_before(sStr, sChar) { var indice = sStr.indexOf(sChar); if (indice != -1) { return sStr.substring(0, indice); } else { return sStr; } } //STRING: Estrazione dei caratteri dalla prima posizione del carattere sChar alla fine della stringa sStr function substring_after(sStr, sChar) { var indice = sStr.indexOf(sChar); if (indice != -1) { return sStr.substring(indice + 1); } else { return sStr; } } //STRING: Estrazione dei caratteri dalla prima posizione del carattere sLeft alla prima posizione del carattere sRight della stringa sStr function substring_between(sStr, sLeft, sRight) { return substring_before(substring_after(sStr, sLeft), sRight); } //OBJECT DOCUMENT: Caricamento di un XML (anche XSL) dall'indirizzo dname function loadXMLDoc(dname) { if (window.XMLHttpRequest) { xhttp = new XMLHttpRequest(); } else { xhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET", dname, false); xhttp.send(""); return (xhttp.responseXML != null) ? xhttp.responseXML : xhttp.responseText; } //VOID: Trasformazione di sXml con sXsl e visualizzazione nell'elemento container function displayResult(sXml, sXsl, container) { xml = loadXMLDoc(sXml); xsl = loadXMLDoc(sXsl); // code for IE if (window.ActiveXObject) { document.getElementById(container).innerHTML = xml.transformNode(xsl); } // code for Mozilla, Firefox, Opera, etc. else if (document.implementation && document.implementation.createDocument) { xsltProcessor = new XSLTProcessor(); xsltProcessor.importStylesheet(xsl); resultDocument = xsltProcessor.transformToFragment(xml, document); document.getElementById(container).innerHTML = ""; document.getElementById(container).appendChild(resultDocument); } } //STRING: Stampa della data odierna, utilizzando o il separatore passato alla funzione o il "-" di default function dataOggi(sSep) { var data = new Date(); sSep = (sSep != null) ? sSep : "-"; return data.getFullYear() + sSep + (data.getMonth() + 1) + sSep + data.getDate(); } //VOID: Modifica la src dell'immagine utilizzando sTxtSel come indicatore della "versione selezionata". E' dinamico sull'estensione dell'immagine. function imgRollover(oImg, sTxtSel){ var sExt = oImg.src.substring(oImg.src.length - 4); var sSel = sTxtSel + sExt; oImg.src = (oImg.src.indexOf(sSel) != -1) ? oImg.src = oImg.src.replace(sSel, sExt) : oImg.src.replace(sExt, sSel); } //[INT, INT]: Calcola la posizione [left, top] dell'elemento obj function findPos(obj) { var curleft = curtop = 0; if (obj.offsetParent) { curleft = obj.offsetLeft curtop = obj.offsetTop while (obj = obj.offsetParent) { curleft += obj.offsetLeft curtop += obj.offsetTop } } return [curleft,curtop]; } //[INT, INT]: Calcola la dimensione in pixel [width, height] della finestra del browser dell'utente function getScreenSize() { var myWidth = 0, myHeight = 0; if (typeof (window.innerWidth) == 'number') { //Non-IE myWidth = window.innerWidth; myHeight = window.innerHeight; } else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) { //IE 6+ in 'standards compliant mode' myWidth = document.documentElement.clientWidth; myHeight = document.documentElement.clientHeight; } else if (document.body && (document.body.clientWidth || document.body.clientHeight)) { //IE 4 compatible myWidth = document.body.clientWidth; myHeight = document.body.clientHeight; } return [myWidth, myHeight] } //[INT, INT]: Calcola il valore in pixel [x, y] della quantita' di scroll della pagina function getScrollXY() { var scrOfX = 0, scrOfY = 0; if (typeof (window.pageYOffset) == 'number') { //Netscape compliant scrOfY = window.pageYOffset; scrOfX = window.pageXOffset; } else if (document.body && (document.body.scrollLeft || document.body.scrollTop)) { //DOM compliant scrOfY = document.body.scrollTop; scrOfX = document.body.scrollLeft; } else if (document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) { //IE6 standards compliant mode scrOfY = document.documentElement.scrollTop; scrOfX = document.documentElement.scrollLeft; } return [scrOfX, scrOfY]; } //STRING: Emula la funzione di trim sulla stringa function trim(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; } //VOID: setta un cookie di nome "name", valore "value" per un tempo definito da "days". //ATTENZIONE: i cookie di sessione si creano assegnano null a "days" function setCookie(name, value, days) { if (days) { var date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); var expires = "; expires=" + date.toGMTString(); } else var expires = ""; document.cookie = name + "=" + value + expires + "; path=/"; } //STRING: ritorna il valore del cookie "name" passato alla funzione function readCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') c = c.substring(1, c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); } return null; } //[int, int]: ritorna un array con le dimensioni [larghezza, altezza] dell'elemento in analisi function getDOMsize(oObj) { return [parseInt(oObj.offsetWidth), parseInt(oObj.offsetHeight)]; } //VOID: setta l'altezza dell'elemento oObj a nMin, se l'altezza attuale di oObj è minore di nMin function minHeight(oObj, nMin) { if (oObj != null) { if (getDOMsize(oObj)[1] < nMin) { oObj.style.height = nMin + 'px'; } } } function checkForm(oForm){ aInput = oForm.getElementsByTagName("input"); for(var i = 0; i != aInput.length; i++){ sNome = aInput[i].getAttribute("name"); sValore = aInput[i].value; switch(sNome){ case "Titolo": if(sValore == ""){ alert("Inserire il proprio titolo"); aInput[i].focus(); return false; } else{ break; } case "Nome": if(sValore == ""){ alert("Inserire il proprio nome"); aInput[i].focus(); return false; } else{ break; } case "Cognome": if(sValore == ""){ alert("Inserire il proprio cognome"); aInput[i].focus(); return false; } else{ break; } case "Tel": if(sValore != ""){ if((sValore.substr(0, 1) != "0") && (sValore.substr(0, 1) != "3")){ alert("Il numero di telefono inserito non e' valido"); aInput[i].focus(); return false; } else{ break; } } else{ alert("Inserire il numero di telefono"); aInput[i].focus(); return false;; } case "Email": if(sValore == ""){ alert("Inserire l'indirizzo e-mail"); aInput[i].focus(); return false; } else{ if(!isValidEmail(sValore)){ alert("L'indirizzo e-mail inserito non e' valido"); aInput[i].focus(); return false; } else{ break; } } case "Messaggio": if(sValore == ""){ alert("Inserire il testo del messaggio"); aInput[i].focus(); return false; } else{ break; } case "cap": case "CAP": if(sValore == ""){ alert("Inserire il cap"); aInput[i].focus(); return false; } else{ break; } case "citta": case "citta'": case "Citta'": if(sValore == ""){ alert("Inserire la citta' di residenza"); aInput[i].focus(); return false; } else{ break; } case "provincia": if(sValore == ""){ alert("Inserire la provincia"); aInput[i].focus(); return false; } else{ break; } case "upload": if(sValore == ""){ alert("Inserire il proprio Curriculum Vitae"); aInput[i].focus(); return false; } else{ break; } } } if(oForm.Provincia.value == ""){ alert("Inserire la provincia"); oForm.Provincia.focus(); return false; } if(oForm.Messaggio.value == ""){ alert("Inserire il testo del messaggio"); oForm.Messaggio.focus(); return false; } return true; } function isValidEmail(emailAddress){ var address = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ return address.test(emailAddress); } function preferiti() { var bookmarkurl="http://www.sanya.it" var bookmarktitle="Sanya Wellness Creator" if (document.all) window.external.AddFavorite(bookmarkurl,bookmarktitle) } function Navigazione(item_id,cat_id,formname,action,lingua) { document.location.href='/default.php?cat_id=&item_id=&lingua=' + lingua; } window.onload=function() { /*var myFlashObject1 = new FlashObject("images/right_menu1.swf", "flash", "150", "490", 6, "#FFFFFF"); myFlashObject1.addParam("wmode", "transparent"); myFlashObject1.write("flash"); var myFlashObject2 = new FlashObject("images/left1.swf", "left_flash", "235", "650", 6, "#FFFFFF"); myFlashObject2.addParam("wmode", "transparent"); myFlashObject2.write("left_flash");*/ } timerID = null; function MoveDown(id,form) { obj = document.getElementById(id); obj.scrollTop = obj.scrollTop + 5; if (form) document.forms[form].elements['scroll_value'].value = obj.scrollTop; timerID = setTimeout("MoveDown('"+id+"')",30); } function MoveUp(id,form) { obj = document.getElementById(id); if ( obj.scrollTop != 0) obj.scrollTop = obj.scrollTop - 5; if (form) document.forms[form].elements['scroll_value'].value = obj.scrollTop; timerID = setTimeout("MoveUp('"+id+"')",30); } function ScrollStop() { clearTimeout(timerID); } function MostraRichiestaInformazione(id_info,id) { document.getElementById(id_info).style.display='block'; obj = document.getElementById(id); obj.scrollTop = obj.scrollTop + 300; }