//global error message string var errorMessage = ''; function isSelected(theSelect) { if (theSelect) { if (theSelect.selectedIndex >= 0) { return theSelect.options[theSelect.selectedIndex].value; } } return -1; } function isEmpty(str) { if (!str) return true; if (wtrim(str).length == 0) return true; return false; } // Removes leading and trailing white spaces // jk 2002-01-04 function wtrim(s) { var p=0, a=0, b=0 s += "" while (p < s.length && (" \r\n".indexOf(s.charAt(p)) >= 0)) p++ a = p if (a == s.length) return "" p = s.length - 1 while (p >= a && (" \r\n".indexOf(s.charAt(p)) >= 0)) p-- b = p + 1 return s.substring(a, b) } // Returns true if length of str is larger // than len. function isLonger(str,len) { var bolLonger=false; if (len=="") len=0; if (!str) str=""; if (str.length>len) bolLonger=true; return bolLonger; } function getFileExtension(str) { var arr=str.split("."); if (arr.length>0) { return arr[arr.length-1]; } else { return ""; } } function reloadOpenerAndClose() { window.opener.top.location.reload(); window.close(); } function isPopulated(theSelect) { if (theSelect) return theSelect.length; return 0; } function fixQuot(theStr) { var re = /"/gi; return theStr.replace(re, """); } function fixSingleQuot(theStr) { var re = /'/gi; return theStr.replace(re, "\""); } function cleanSearchString(theStr) { var s = theStr; var re = /\%/gi; s = s.replace(re, ""); var re = /\*/gi; s = s.replace(re, ""); return s; } function setObjectMarked(theObject) { theObject.focus(); theObject.select(); } function delEmailConfirm(theURL) { var theMsg="Vill du verkligen ta bort email?"; if (confirm(theMsg)) location.replace(theURL); else window.close(); } function replace_char(lmnt) { var new_str = ""; var array = ""; var inStr = lmnt.value; array = inStr.split(String.fromCharCode(13)); for (i = 0; i < array.length; i++) { new_str = new_str + array[i]; if (i + 1 < array.length) { if (navigator.platform.toLowerCase().indexOf('mac') < 0) { new_str = new_str + ""; } else { new_str = new_str + "
"; } } } array = new_str.split(String.fromCharCode(10)); new_str=""; for (i = 0; i < array.length; i++) { new_str = new_str + array[i]; if (i + 1 < array.length) new_str = new_str + "
"; } array = new_str.split(String.fromCharCode(34)); new_str=""; for (i = 0; i < array.length; i++) { new_str = new_str + array[i]; if (i + 1 < array.length) new_str = new_str + " "; } lmnt.value=new_str; } var multipleEmailDelimiter = ';'; function verifyEmail(ctl) { var message = ''; if (!emailOk(ctl.value)) { // alert(errorMessage); alert("E-postadressen är inte korrekt ifylld!\nKontrollera e-postadressen och försök igen.\n"); ctl.focus(); return false; } return true; } function verifyEmailMultiple(ctl) { var message = ''; if (!emailOkMultiple(ctl.value, multipleEmailDelimiter)) { alert(errorMessage); ctl.focus(); return false; } return true; } function emailOkMultiple(adresses, delimiter) { //temp storage of addresses var adressesTmp = adresses; //split eventual array var aryEmail = adresses.split(delimiter); //check each address in array for ( var i = 0; i < aryEmail.length-1; i++ ) { if ( !emailOk(aryEmail[i]) ) return false; adressesTmp = adressesTmp.substr(aryEmail[i].length + delimiter.length); } //check remaing address if ( adressesTmp.length > 0 && !emailOk(adressesTmp) ) return false; return true; } function emailOk(adress) { //reset error message //mod by PA for using error object 2002-02-14 errorMessage = ''; var allowedChars = /[a-zA-Z0-9\x40\x2E\x5F]/; //[a-zA-Z0-9-._] var allowedCharsExtended = /[a-zA-Z0-9\x40\x2D\x2E\x5F]/; //[a-zA-Z0-9@-._] var oddCombination = new Array(); oddCombination[0] = '..'; oddCombination[1] = '@.'; oddCombination[2] = '.@'; var sMsg = ''; //if empty return true if ( adress.length == 0 ) return true; //verify that @ and . are in address if (adress.indexOf('@') <= -1) { sMsg = 'Adress ' + adress + ' innehåller inget @-tecken.'; errorMessage = sMsg; err.add('', sMsg, ''); } if (adress.indexOf('@') == 0) { sMsg = 'Adress ' + adress + ' får inte börja med ett @-tecken.'; errorMessage = sMsg; err.add('', sMsg, ''); } if (adress.lastIndexOf('@') == adress.length - 1) { sMsg = 'Adress ' + adress + ' får inte sluta med ett @-tecken.'; errorMessage = sMsg; err.add('', sMsg, ''); } if (adress.indexOf('.') <= -1) { sMsg = 'Adress ' + adress + ' innehåller ingen punkt.'; errorMessage = sMsg; err.add('', sMsg, ''); } if (adress.indexOf('.') == 0) { sMsg = 'Adress ' + adress + ' får inte börja med en punkt.'; errorMessage = sMsg; err.add('', sMsg, ''); } if (adress.lastIndexOf('.') == adress.length - 1) { sMsg = 'Adress ' + adress + ' får inte sluta med en punkt.'; errorMessage = sMsg; err.add('', sMsg, ''); } //length and charcters of top level domain if (((adress.length - adress.lastIndexOf('.')) < 3) || ((adress.length - adress.lastIndexOf('.')) > 6)) { sMsg = 'Toppnivådomänadressen ' + adress + ' måste innehålla mellan 2 och 5 tecken.'; errorMessage = sMsg; err.add('', sMsg, ''); } if ( adress.substr(adress.lastIndexOf('.')).indexOf('@') >= 0 ) { sMsg = 'Toppnivådomänadressen innehåller ett @-tecken.'; errorMessage = sMsg; err.add('', sMsg, ''); } //check for valid characters only //valid charachters are a-z A-Z 0-9 . (hex 2E) @ (hex 40) - (hex 2D) if ( errorMessage.length == 0 ) { for (var i=0; i= 0) { sMsg = 'Teckenkombinationen ' + oddCombination[i] + ' är inte tillåten.'; errorMessage = sMsg; err.add('', sMsg, ''); break; } } } if ( errorMessage.length == 0 ) return true; return false; } function emailOk_20020214(adress) { //reset error message errorMessage = ''; var allowedChars = /[a-zA-Z0-9\x40\x2E\x5F]/; //[a-zA-Z0-9-._] var allowedCharsExtended = /[a-zA-Z0-9\x40\x2D\x2E\x5F]/; //[a-zA-Z0-9@-._] var oddCombination = new Array(); oddCombination[0] = '..'; oddCombination[1] = '@.'; oddCombination[2] = '.@'; //if empty return true if ( adress.length == 0 ) return true; //verify that @ and . are in address if (adress.indexOf('@') <= -1) errorMessage = 'Adress ' + adress + ' innehåller inget @-tecken.'; if (adress.indexOf('@') == 0) errorMessage = 'Adress ' + adress + ' får inte börja med ett @-tecken.'; if (adress.lastIndexOf('@') == adress.length - 1) errorMessage = 'Adress ' + adress + ' får inte sluta med ett @-tecken.'; if (adress.indexOf('.') <= -1) errorMessage = 'Adress ' + adress + ' innehåller ingen punkt.'; if (adress.indexOf('.') == 0) errorMessage = 'Adress ' + adress + ' får inte börja med en punkt.'; if (adress.lastIndexOf('.') == adress.length - 1) errorMessage = 'Adress ' + adress + ' får inte sluta med en punkt.'; //length and charcters of top level domain if (((adress.length - adress.lastIndexOf('.')) != 3) && ((adress.length - adress.lastIndexOf('.')) != 4)) errorMessage = 'Toppnivådomänadressen ' + adress + ' måste innehålla 2 eller 3 tecken.'; if ( adress.substr(adress.lastIndexOf('.')).indexOf('@') >= 0 ) errorMessage = 'Toppnivådomänadressen innehåller ett @-tecken.'; //check for valid characters only //valid charachters are a-z A-Z 0-9 . (hex 2E) @ (hex 40) - (hex 2D) if ( errorMessage.length == 0 ) { for (var i=0; i= 0) { errorMessage = 'Teckenkombinationen ' + oddCombination[i] + ' är inte tillåten.'; break; } } } if ( errorMessage.length == 0 ) return true; return false; } function checkFields(frm,list) { var bolEmptyOk; var bolErrorOk; var strError; var arrLmnts; var strLmnt; // var strName; var objLmnt; var objSubLmnt; var objMarked; var bolChecked; strError=""; arrLmnts=list.split(","); for(var i=0; i=0) { theForm.orgId.value=theForm.orgIdRegionKommun.value; theForm.action='/eprise/main/hemhyra/firstpage/firstPage' return true; } else if (isSelected(theForm.orgIdRegion)>=0) { theForm.orgId.value=theForm.orgIdRegion.value; theForm.action='/eprise/main/hemhyra/firstpage/firstPage' return true; } else { if (theForm.postnr.value=='') { alert("\nVälj lokal nyhet eller ange ett postnummer!\n"); theForm.postnr.focus(); return false; } else { if (postnummerOk(theForm.postnr.value)) { theForm.action='/eprise/main/hemhyra/firstpage/PostnrResult' return true; } else { alert("\nKontrollera postnumret!\n"); theForm.postnr.focus(); return false; } } } } function objVerbosePostnummerOk(objPostnummer) { if (postnummerOk(objPostnummer.value)) { return true } else { alert("\nKontrollera postnumret!\n") objPostnummer.focus() return false } } function postnummerOk(postnummer) { var allowedChars = /[0-9 ]/; var pnrOk = true; errorMessage = ''; var strLen = 0; //alert("1: " + pnrOk + " , '" + postnummer + "'") // check for illegal characters for (var i=0; i= 0) { if (idx == 0) s = s.substr(1, s.length - 1); else s = s.substr(0, idx) + s.substr(idx + 1, s.length - 1 - idx); idx = s.search(reNotAllowedChars); } } //remove chars that isnt explicit allowed if(reAllowedChars) { for (var i = s.length - 1; i >= 0 ; i--) { idx = s.substr(i, 1).search(reAllowedChars); if (idx < 0) s = s.substr(0, i) + s.substr(i + 1, s.length - 1 - i); } } return s; } // Date and time functions added by fa@xms.se 020611 function isDateYYYYMMDD(s) { if (s.length != 8) return false var yy = s.substring(0, 4) - 0 var mm = s.substring(4, 6) - 0 var dd = s.substring(6, 8) - 0 if (yy >= 1900 && yy <= 2200 && mm >= 1 && mm <= 12 && dd >= 1 && ( ((mm == 1 || mm == 3 || mm == 5 || mm == 7 || mm == 8 || mm == 10 || mm == 12) && dd <= 31) || ((mm == 2) && dd <= (yy % 4 == 0 ? 29 : 28)) || ((mm == 4 || mm == 6 || mm == 9 || mm == 11 ) && dd <= 30) ) ) { return true } return false } function isTimeHHMM(s) { if (s.length != 4) return false; var hh = s.substring(0,2); var mm = s.substring(2,4); if (parseInt(hh) >= 0 && parseInt(hh) <= 23 && parseInt(mm)>=0 && parseInt(mm) <= 59) return true return false } function isEmailAddress(email) { spacePos = email.indexOf(" "); dotPos = email.lastIndexOf("."); atPos = email.indexOf("@"); strLen = email.length; lcLen = strLen - dotPos; return spacePos < 0 && dotPos > 0 && atPos > 0 && dotPos > atPos +1 && strLen >= 6 && lcLen > 2; } //Funktioner för att visa ankäter //040402, Tomas Rolfsman function popupEnkat(qid){ var newLocation = "http://quest2.genero.se/respond/?Q"; //if (qid<10) newLocation = newLocation + "00"; //if (qid<100) newLocation = newLocation + "0"; newLocation = newLocation + qid; window.open(newLocation,"Respondent","toolbar=no,location=no,status=yes,scrollbars=no,resizable=yes,width=620,height=560,screenX=0,screenY=0"); } //Slut, visa enkät //Bestämmer hur en användaren ska komma till bokmärket toppen //040402, Tomas Rolfsman function scrollToTop(){ var MSIE = (navigator.userAgent.indexOf('MSIE') != -1); var NS = (navigator.userAgent.indexOf('Netscape') != -1 && navigator.userAgent.indexOf('Gecko') != -1); var Nav4="false"; if(document.layers){Nav4="true";}; if (Nav4||NS ){ location.href = "#toppen"; } if (MSIE){ window.top.document.getElementById("toppen").scrollIntoView(); } if (!MSIE&&!Nav4&&NS){alert("Felaktig browsertyp!")} }