function windowSearch(doc){ var temp=doc.Parole.value; if (temp=="") { alert("Inserire almento un termine da ricercare"); doc.Parole.focus(); } else { var StringaRicerca = escape(temp.replace(" "," and ")); top.location.href='/adl/annuncidilavoro.nsf/AllAnnunciSearchSS?SearchView&Query='+StringaRicerca+'&SearchMax=0&SearchOrder=3'; } } function eseguiRicerca(doc){ var operatore=" AND "; var StringaRicerca=""; var funzione=doc.Funzione.options.selectedIndex; var vfunzione=doc.Funzione.options[funzione].text; var settore=doc.Settore.options.selectedIndex; var vsettore=doc.Settore.options[settore].text; var regione=doc.Regione.options.selectedIndex; var vregione=doc.Regione.options[regione].text; switch (vfunzione) { case "Nessuna selezione...": break; case "RISORSE UMANE-ORGANIZZAZIONE-FORMAZIONE": var StringaRicerca = "field FUNZIONE contains \"RISORSE UMANE\""; break; case "PROJECT MANAGER-INGEGNERIA": var StringaRicerca = "field FUNZIONE contains \"PROJECT MANAGER\""; break; case "CONTABILITA'-AMMINISTRAZIONE-FINANZA-LEGALE": var StringaRicerca = "field FUNZIONE contains \"AMMINISTRAZIONE\""; break; case "PRODUZIONE-LOGISTICA-ACQUISTI-RICERCA E SVILUPPO": var StringaRicerca = "field FUNZIONE contains \"PRODUZIONE\""; break; case "INFORMATICA-TELECOMUNICAZIONI": var StringaRicerca = "field FUNZIONE contains \"INFORMATICA\""; break; case "VENDITE-COMMERCIALE-EXPORT": var StringaRicerca = "field FUNZIONE contains \"VENDITE\""; break; case "TOP MANAGEMENT": var StringaRicerca = "field FUNZIONE contains \"TOP\""; break; case "MARKETING-COMUNICAZIONE-ATTIVITA' CREATIVE": var StringaRicerca = "field FUNZIONE contains \"EXPORT\""; break; case "SEGRETARIATO-SUPPORTO-SERV. GEN. E ALLA PERSONA": var StringaRicerca = "field FUNZIONE contains \"SEGRETARIATO\""; break; case "PRIMO LAVORO-CORSI-STAGE": var StringaRicerca = "field FUNZIONE contains \"STAGE\""; break; } switch (vsettore) { case "Nessuna selezione...": break; case "DISTRIBUZIONE / GDO / LARGO CONSUMO": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"DISTRIBUZIONE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"DISTRIBUZIONE\""; } break; case "CHIMICO / FARMACEUTICO": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"CHIMICO\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"CHIMICO\""; } break; case "BANCHE / FINANZA / ASSICURAZIONI": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"BANCHE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"BANCHE\""; } break; case "IT / INTERNET": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"INTERNET\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"INTERNET\""; } break; case "NEOLAUREATI / NEODIPLOMATI": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"NEOLAUREATI\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"NEOLAUREATI\""; } break; case "CALL CENTRE / CALL CENTER": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"CALL CENTER\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"CALL CENTER\""; } break; case "MODA / ACCESSORI / TESSILE": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"MODA\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"MODA\""; } break; case "VENDITE / AGENTI": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"VENDITE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"VENDITE\""; } break; case "INGEGNERIA / ARCHITETTURA": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"INGEGNERIA\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"INGEGNERIA\""; } break; case "COMUNICAZIONE / MARKETING / ATTIVITA' CREATIVE": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"COMUNICAZIONE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"COMUNICAZIONE\""; } break; case "RISORSE UMANE / PERSONALE": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"RISORSE UMANE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"RISORSE UMANE\""; } break; case "FORMAZIONE / STAGE": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"FORMAZIONE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"FORMAZIONE\""; } break; case "ANIMAZIONE / TURISMO": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"ANIMAZIONE\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"ANIMAZIONE\""; } break; case "MECCANICA / METALMECCANICI / AUTOMOTIVE": if (StringaRicerca == "") { var StringaRicerca = "field SETTORE contains \"MECCANICA\""; } else { var StringaRicerca = StringaRicerca + " and field SETTORE contains \"MECCANICA\""; } break; } if (vregione == "Nessuna selezione...") { } else { if (StringaRicerca == "") { var StringaRicerca = "field SEDE contains \""+ vregione +"\""; } else { var StringaRicerca = StringaRicerca + " and field SEDE contains \""+ vregione +"\""; } } if (StringaRicerca == "") { alert("Inserire almento un criterio di ricerca"); doc.Funzione.focus(); } else { var vai_a = '/adl/annuncidilavoro.nsf/AllAnnunciSearchSS?SearchView&Query='+escape(StringaRicerca)+'&SearchMax=0&SearchOrder=3'; top.location.href=vai_a; } } function newsletter(theurl){ popWindow=window.open(theurl,'popup','toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=yes,width=200,height=320'); } /*************************\ ** Rimpiazza ** s stringa ** t ricerca ** u sostituisci con ** returns new String \*************************/ function SostituisciStringa(s, t, u) { i = s.indexOf(t); r = ""; if (i == -1) return s; r += s.substring(0,i) + u; if ( i + t.length < s.length) r += replace(s.substring(i + t.length, s.length), t, u); return r; } /***************************************************************\ * * * funzione skan: utility per esplorare l'oggetto desiderato * * Da chiamare direttamente dalla barra degli indirizzi del * * browser * * * \***************************************************************/ function skan(objname){ var a=new Array(); var k=0; var obj=eval(objname);var h; for (i in obj){ if((typeof obj[i])=='object' && obj[i]!=null){ h=(parseInt(i)==i) a[k]=""+i+""; } else a[k]=i.replace(/\="+obj[i]; } var w=window.open('','','width=400,height=500,scrollbars=yes,resizable=yes'); w.document.write("

"+objname+"

    "+a.sort()+"
") this.base=w.base=window; } /***************************************************************\ * * * funzione apri: utility per apertura di documenti in * * finestrelle pop-up. IL default è un 280x300 centrato * * * * PARAMETRI: * * apri(URL, width, height, left, top, scrollbars ) * * * \***************************************************************/ function apri (URL){ var args=apri.arguments; var w=args[1]?args[1]:280; var h=args[2]?args[2]:300; var l=args[3]?args[3]:((screen.width-w)/2); var t=args[4]?args[4]:((screen.height-h)/2); var s=args[5]?args[5]:'no'; var name=args[6]?args[6]:'' var features ="menubar=no,toolbar=no,width="+w+",height="+h+",status=no,scrollbars="+s+",top="+t+",left="+l+",resizable=yes"; finestra=window.open(URL,name,features); finestra.focus(); return finestra; } /***************************************************************\ * * * validaTesto: verifica se blank * * * * PARAMETRI: * * validaTesto(obj, LabelToShow) * * * \***************************************************************/ function validaTesto(obj) { try{ var label=arguments[1]?arguments[1]:obj.name; if (obj.value==""){ alert('Il campo ' + label + ' è obbligatorio'); obj.focus(); obj.select(); return false; } return true; } catch(err){ return true; } } // /***************************************************************\ * * * validaTestoStrict: se contiene caratteri strani: <>#%$§@" * * o se è vuoto. Se è definito il parametro canEmpty, il vuoto * * è ammesso; il default è BLANK NON AMMESSO * * * * PARAMETRI: * * validaTestoStrict(obj, LabelToShow, canBeEmpty) * * * \***************************************************************/ function validaTestoStrict(obj) { try { var label=arguments[1]?arguments[1]:obj.name; if(!arguments[2]){ if(!validaTesto(obj, label)) return false; } if (obj.value.match(/(^\s)|[(<>#%$§@")]|(\s$)/)){ msg='Il campo ' + label + ' può contenere solo caratteri, cifre o spazi.\n'; msg+='Non può iniziare o finire con uno spazio.\n'; msg+='Non sono ammessi caratteri speciali.'; alert(msg); obj.focus(); obj.select(); return false; } return true; } catch(err){ return true; } } /*****************************************************************\ * validaNomeBreve(): funzione di validazione del campo nome breve * Campo che non deve contenere una serie di stringhe o caratteri: * * NON E' AMMESSO BLANK \*****************************************************************/ function validaNomeBreve(obj) { if(!validaTesto(obj, "Nome breve")) return false; try { // if (obj.value.match(/(^\s)|(\W)|\b(spa|snc|srl|sas|scrl|scpa|ltd)\b|(\s$)/gi) ) { if (obj.value.match(/(^\s)|([^a-z0-9\s])|\b(spa|snc|srl|sas|scrl|scpa|ltd)\b|(\s$)/gi) ) { msg='Il campo Nome breve può contenere solo caratteri, cifre o spazi.\n'; msg+='Non può iniziare o finire con uno spazio.\n'; msg+='Non sono ammessi caratteri speciali o segni di interpunzione.\n'; msg+='Non deve essere indicata la ragione sociale.'; alert(msg); obj.focus(); obj.select(); return false; } return true; } catch(err){ return true; } } /***************************************************************\ * * * validaMail(obj, canBeEmpty) * * valida un indirizzo email nel generico formato: * * * * testo[.testo | -testo] @ testo[.testo | -testo] * * * * default BLANK NON AMMESSO; se esiste canBeEmpty, sì * * * \***************************************************************/ function validaMail(obj){ try { var it=obj.value; if(arguments[1]){ if(obj.value=="") return true; } if (!(it.match(/^\w+((\.|-){1}\w+)*\@{1}\w+((\.|-){1}\w+)*((\.){1}\w+){1}$/))){ alert("Indirizzo e-mail non è corretto"); obj.focus(); obj.select(); return false; } return true; } catch(err){ return true; } } /*****************************************************************\ * validaURL(): * Validazione di un url del tipo http:// * \*****************************************************************/ function validaURL(obj) { try { if (obj.value=="") return true; //VUOTO è ammesso if (!obj.value.match(/http:\/\/(.+)$/gi)){ alert("Verificare l'indirizzo internet"); obj.focus(); obj.select(); return false; } return true; } catch(err){ return true; } } /***************************************************************\ * * * validaCheckBox: verifica se è selezionata una voce * * * * PARAMETRI: * * validaCheckBox(obj, [label], [noalert]) * * * * se il terzo parametro è definito, qualunque valore, non * * mostro l'alert * \***************************************************************/ function validaCheckBox(obj) { try { var label=arguments[1]?arguments[1]:obj[0].name; var noalert=arguments[2]; for (var i = 0; itopWidth()) {return topWidth()-objWidth-1} else {return objLeft(obj)} } /***********************************************************************\ * objTop(): funzione che calcola l'ordinata di un obj assegnato all'interno dell finestra * PARAMETRI: * obj: l'oggetto - obbligatorio * offsetY: eventuale traslazione in y da aggiungere * \************************************************************************/ function objTop(obj) { var offsetY=arguments[1]?arguments[1]:0; if(obj.offsetParent==null) { return offsetY+obj.offsetTop; }else{ return offsetY+obj.offsetTop+objTop(obj.offsetParent,offsetY); } } /***********************************************************************\ * showNearObj(): funzione di show / hde di un div puntato per id rispetto a un oggetto assegnato * oppure alla posizione del mouse * PARAMETRI: * id: l'id dell'oggetto da switchare - obbligatorio * onoff: boolean per show(true) hide(false) - obbligatorio * offsetX[Y]: offset del div rispetto al puntatore del mouse. Se non indicati, 0 * Significativi solo per onoff=true * objRef: oggetto di riferimento rispetto a quale visualizzare l'oggetto * contraddistinto da id * Se objRef è nullo la funzione si riduce a showObj * \************************************************************************/ function showNearObj( id , onoff, offsetX, offsetY,refObj){ var x=refObj?objLeft(refObj):event.x; var y=refObj?objTop(refObj):event.y; var oX=offsetX?offsetX:0; var oY=offsetY?offsetY:0; var obj=document.all[id]; obj.style.left=x + oX; obj.style.top=y + oY; if (onoff){ obj.style.visibility='visible'; } else { obj.style.visibility='hidden'; } } /**********************************************************************************************\ * cambiaIframeLocation(iframeName,url): cambia,la source di un iframe \**********************************************************************************************/ function cambiaIframeLocation(iframeName,url) { var obj=document.all[iframeName].contentWindow; obj.location=url } /**********************************************************************************************\ * eliminaDoc(url): funzione di eliminazione del doc da finestrella: devo * chiudere per evitare il $$ReturnDocumentDeleted \**********************************************************************************************/ function eliminaDoc( url ){ if (confirm("Eliminare il documento?")) { location.replace(url); // window.opener.location.reload(); // window.close(); } } /***************************************************************\ * * \***************************************************************/