var errorMessages = new Object(); errorMessages.intro = 'Följande obligatoriska fält är inte ifyllda eller är felaktigt ifyllda:'; errorMessages.workplace = 'Arbetsplats'; errorMessages.task = 'Arbetsbeskrivning'; errorMessages.title = 'Annonsrubrik'; errorMessages.req = 'Kvalifikationer'; errorMessages.sched = 'Arbetstid/Varaktighet'; errorMessages.benefit = 'Lön/Förmåner'; errorMessages.cat = 'Kategori'; errorMessages.county = 'Län'; errorMessages.municipallity = 'Kommun'; errorMessages.startdate = 'Startdatum'; errorMessages.enddate = 'Slutdatum'; errorMessages.numpos = 'Antal platser'; errorMessages.ssyk = 'Yrkesgrupp'; errorMessages.yrkesomrade = 'Yrkesområde'; errorMessages.yrkesbenamning = 'Yrkesbenämning'; errorMessages.lang = 'Språk'; errorMessages.name = 'Namn'; errorMessages.name2 = 'Namn'; errorMessages.companyname = 'Arbetsplats'; errorMessages.orgnr = 'Organisationsnummer'; errorMessages.address = 'Utdelningsadress'; errorMessages.zip = 'Postnummer'; errorMessages.city = 'Postort'; errorMessages.country = 'Land'; errorMessages.email = 'E-postadress'; errorMessages.password = 'Lösenord'; errorMessages.firstname = 'Förnamn'; errorMessages.lastname = 'Efternamn'; errorMessages.cellphone = 'Mobiltelefonnummer'; errorMessages.username = 'Användarnamn'; errorMessages.ad = 'Annons'; function validate(frm){ var hasErrors = false; var message=''; message+=errorMessages.intro + '\n'; if (frm == 'newedad') { if(document.getElementById('workplace') && !isItemSelected(document.getElementById('workplace'))){ hasErrors = true; message+='- ' + errorMessages.workplace + '\n'; showError('workplaceError'); } else if(document.getElementById('workplaceError')) { hideError('workplaceError'); } if(document.getElementById('JobPositionTitle') && isZeroLength(document.getElementById('JobPositionTitle').value)){ hasErrors = true; message+='- ' + errorMessages.title + '\n'; showError('headlineError'); } else if(document.getElementById('headlineError')) { hideError('headlineError'); } if(document.getElementById('JobPositionTasks') && isZeroLength(tinyMCE.get('JobPositionTasks').getContent())){ hasErrors = true; message+='- ' + errorMessages.task + '\n'; showError('taskError'); } else if(document.getElementById('taskError')) { hideError('taskError'); } if(document.getElementById('JobPositionRequirements') && isZeroLength(tinyMCE.get('JobPositionRequirements').getContent())){ hasErrors = true; message+='- ' + errorMessages.req + '\n'; showError('reqError'); } else if(document.getElementById('reqError')) { hideError('reqError'); } if(document.getElementById('Schedule') && isZeroLength(tinyMCE.get('Schedule').getContent())){ hasErrors = true; message+='- ' + errorMessages.sched + '\n'; showError('schedError'); } else if(document.getElementById('schedError')) { hideError('schedError'); } if(document.getElementById('BenefitsDescription') && isZeroLength(tinyMCE.get('BenefitsDescription').getContent())){ hasErrors = true; message+='- ' + errorMessages.benefit + '\n'; showError('benefitError'); } else if(document.getElementById('benefitError')) { hideError('benefitError'); } if(document.getElementById('category') && !isItemSelected(document.getElementById('category'))){ hasErrors = true; message+='- ' + errorMessages.cat + '\n'; showError('catError'); } else if(document.getElementById('catError')) { hideError('catError'); } if((document.getElementById('country').value == 'se') && document.getElementById('county') && !isItemSelected(document.getElementById('county'))){ hasErrors = true; message+='- ' + errorMessages.county + '\n'; showError('countyError'); } else if(document.getElementById('countyError')) { hideError('countyError'); } if((document.getElementById('country').value == 'se') && document.getElementById('municipallity') && !isItemSelected(document.getElementById('municipallity'))){ hasErrors = true; message+='- ' + errorMessages.municipallity + '\n'; showError('municipallityError'); } else if(document.getElementById('municipallityError')) { hideError('municipallityError'); } if(document.getElementById('year') && !isItemSelected(document.getElementById('day')) || !isItemSelected(document.getElementById('month')) || (!isNumeric(document.getElementById('year').value) || !checkValue(document.getElementById('year').value, 1900, 2010))){ hasErrors = true; message+='- ' + errorMessages.startdate + '\n'; showError('startdateError'); } else if(document.getElementById('startdateError')) { hideError('startdateError'); } if(document.getElementById('year2') && !isItemSelected(document.getElementById('day2')) || !isItemSelected(document.getElementById('month2')) || (!isNumeric(document.getElementById('year2').value) || !checkValue(document.getElementById('year2').value, 1900, 2010))){ hasErrors = true; message+='- ' + errorMessages.enddate + '\n'; showError('enddateError'); } else if(document.getElementById('enddateError')) { hideError('enddateError'); } if(document.getElementById('numpos') && (isZeroLength(document.getElementById('numpos').value) || !isNumeric(document.getElementById('numpos').value))){ hasErrors = true; message+='- ' + errorMessages.numpos + '\n'; showError('numposError'); } else if(document.getElementById('numposError')) { hideError('numposError'); } if(document.getElementById('yrkesomrade') && !isItemSelected(document.getElementById('yrkesomrade'))){ hasErrors = true; message+='- ' + errorMessages.yrkesomrade + '\n'; showError('yrkesomradeError'); } else if(document.getElementById('yrkesomradeError')) { hideError('yrkesomradeError'); } if(document.getElementById('lang') && !isItemSelected(document.getElementById('lang'))){ hasErrors = true; message+='- ' + errorMessages.lang + '\n'; showError('langError'); } else if(document.getElementById('langError')) { hideError('langError'); } if(document.getElementById('SSYK') && !isItemSelected(document.getElementById('SSYK'))){ hasErrors = true; message+='- ' + errorMessages.ssyk + '\n'; showError('yrkesgruppError'); } else if(document.getElementById('yrkesgruppError')) { hideError('yrkesgruppError'); } if(document.getElementById('OccupationNameID') && !isItemSelected(document.getElementById('OccupationNameID'))){ hasErrors = true; message+='- ' + errorMessages.yrkesbenamning + '\n'; showError('OccupationNameIDError'); } else if(document.getElementById('OccupationNameIDError')) { hideError('OccupationNameIDError'); } } else if (frm == 'newinterview') { if(document.getElementById('adid') && !isItemSelected(document.getElementById('adid'))){ hasErrors = true; message+='- ' + errorMessages.ad + '\n'; showError('adidError'); } else if(document.getElementById('adidError')) { hideError('adidError'); } } else if (frm == 'workplaces') { if(document.getElementById('name') && isZeroLength(document.getElementById('name').value)){ hasErrors = true; message+='- ' + errorMessages.name + '\n'; showError('nameError'); } else if(document.getElementById('nameError')) { hideError('nameError'); } if(document.getElementById('companyname') && isZeroLength(document.getElementById('companyname').value)){ hasErrors = true; message+='- ' + errorMessages.companyname + '\n'; showError('workplaceError'); } else if(document.getElementById('workplaceError')) { hideError('workplaceError'); } if(document.getElementById('orgnr') && isZeroLength(document.getElementById('orgnr').value)){ hasErrors = true; message+='- ' + errorMessages.orgnr + '\n'; showError('orgnrError'); } else if(document.getElementById('orgnrError')) { hideError('orgnrError'); } if(document.getElementById('address') && isZeroLength(document.getElementById('address').value)){ hasErrors = true; message+='- ' + errorMessages.address + '\n'; showError('addressError'); } else if(document.getElementById('addressError')) { hideError('addressError'); } if(document.getElementById('zip') && isZeroLength(document.getElementById('zip').value)){ hasErrors = true; message+='- ' + errorMessages.zip + '\n'; showError('zipError'); } else if(document.getElementById('zipError')) { hideError('zipError'); } if(document.getElementById('city') && isZeroLength(document.getElementById('city').value)){ hasErrors = true; message+='- ' + errorMessages.city + '\n'; showError('cityError'); } else if(document.getElementById('cityError')) { hideError('cityError'); } if(document.getElementById('country') && !isItemSelected(document.getElementById('country'))){ hasErrors = true; message+='- ' + errorMessages.country + '\n'; showError('countryError'); } else if(document.getElementById('countryError')) { hideError('countryError'); } if(document.getElementById('llan') && !isItemSelected(document.getElementById('llan'))){ hasErrors = true; message+='- ' + errorMessages.county + '\n'; showError('countyError'); } else if(document.getElementById('countyError')) { hideError('countyError'); } if(document.getElementById('kommun') && !isItemSelected(document.getElementById('kommun'))){ hasErrors = true; message+='- ' + errorMessages.municipallity + '\n'; showError('municipallityError'); } else if(document.getElementById('municipallityError')) { hideError('municipallityError'); } } else if (frm == 'cvform') { if(document.getElementById('loginradio')) { if (isChecked(document.getElementById('loginradio'))) { if(document.getElementById('login_username') && isZeroLength(document.getElementById('login_username').value)){ hasErrors = true; message+='- ' + errorMessages.username + '\n'; showError('login_usernameError'); } else if(document.getElementById('login_usernameError')) { hideError('login_usernameError'); } if(document.getElementById('login_password') && isZeroLength(document.getElementById('login_password').value)){ hasErrors = true; message+='- ' + errorMessages.password + '\n'; showError('login_passwordError'); } else if(document.getElementById('login_passwordError')) { hideError('login_passwordError'); } } else { if(document.getElementById('login_firstname') && isZeroLength(document.getElementById('login_firstname').value)){ hasErrors = true; message+='- ' + errorMessages.firstname + '\n'; showError('login_firstnameError'); } else if(document.getElementById('login_firstnameError')) { hideError('login_firstnameError'); } if(document.getElementById('login_lastname') && isZeroLength(document.getElementById('login_lastname').value)){ hasErrors = true; message+='- ' + errorMessages.lastname + '\n'; showError('login_lastnameError'); } else if(document.getElementById('login_lastnameError')) { hideError('login_lastnameError'); } if(document.getElementById('login_email') && (isZeroLength(document.getElementById('login_email').value) || !isValidEmail(document.getElementById('login_email').value))){ hasErrors = true; message+='- ' + errorMessages.email + '\n'; showError('login_emailError'); } else if(document.getElementById('login_emailError')) { hideError('login_emailError'); } if(document.getElementById('login_cellphone') && isZeroLength(document.getElementById('login_cellphone').value)){ hasErrors = true; message+='- ' + errorMessages.cellphone + '\n'; showError('login_cellphoneError'); } else if(document.getElementById('login_cellphoneError')) { hideError('login_cellphoneError'); } } } } else if (frm == 'newapplication2') { if(document.getElementById('loginradio')) { if (isChecked(document.getElementById('loginradio'))) { if(document.getElementById('login_username') && isZeroLength(document.getElementById('login_username').value)){ hasErrors = true; message+='- ' + errorMessages.username + '\n'; showError('login_usernameError'); } else if(document.getElementById('login_usernameError')) { hideError('login_usernameError'); } if(document.getElementById('login_password') && isZeroLength(document.getElementById('login_password').value)){ hasErrors = true; message+='- ' + errorMessages.password + '\n'; showError('login_passwordError'); } else if(document.getElementById('login_passwordError')) { hideError('login_passwordError'); } } else { if(document.getElementById('login_firstname') && isZeroLength(document.getElementById('login_firstname').value)){ hasErrors = true; message+='- ' + errorMessages.name2 + '\n'; showError('login_firstnameError'); } else if(document.getElementById('login_firstnameError')) { hideError('login_firstnameError'); } if(document.getElementById('login_email') && (isZeroLength(document.getElementById('login_email').value) || !isValidEmail(document.getElementById('login_email').value))){ hasErrors = true; message+='- ' + errorMessages.email + '\n'; showError('login_emailError'); } else if(document.getElementById('login_emailError')) { hideError('login_emailError'); } if(document.getElementById('login_cellphone') && isZeroLength(document.getElementById('login_cellphone').value)){ hasErrors = true; message+='- ' + errorMessages.cellphone + '\n'; showError('login_cellphoneError'); } else if(document.getElementById('login_cellphoneError')) { hideError('login_cellphoneError'); } } } } if(hasErrors) { alert(message); message=''; return false; } else { return true; } } function isValidEmail(address) { if (address != '' && address.search) { if (address.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1) return true; else return false; } // allow empty strings to return true - screen these with either a 'required' test or a 'length' test else return true; } function isAlphanumeric(string, ignoreWhiteSpace) { if (string.search) { if ((ignoreWhiteSpace && string.search(/[^\w\s]/) != -1) || (!ignoreWhiteSpace && string.search(/\W/) != -1)) return false; } return true; } // Check that a string contains only letters function isAlphabetic(string, ignoreWhiteSpace) { if (string.search) { if ((ignoreWhiteSpace && string.search(/[^a-zA-Z\s]/) != -1) || (!ignoreWhiteSpace && string.search(/[^a-zA-Z]/) != -1)) return false; } return true; } // Check that a string contains only numbers function isNumeric(string, ignoreWhiteSpace) { if (string.search) { if ((ignoreWhiteSpace && string.search(/[^\d\s]/) != -1) || (!ignoreWhiteSpace && string.search(/\D/) != -1)) return false; } return true; } // Remove leading and trailing whitespace from a string function trimWhitespace(string) { var newString = ''; var substring = ''; beginningFound = false; // copy characters over to a new string // retain whitespace characters if they are between other characters for (var i = 0; i < string.length; i++) { // copy non-whitespace characters if (string.charAt(i) != ' ' && string.charCodeAt(i) != 9) { // if the temporary string contains some whitespace characters, copy them first if (substring != '') { newString += substring; substring = ''; } newString += string.charAt(i); if (beginningFound == false) beginningFound = true; } // hold whitespace characters in a temporary string if they follow a non-whitespace character else if (beginningFound == true) substring += string.charAt(i); } return newString; } // Remove characters that might cause security problems from a string function removeBadCharacters(string) { if (string.replace) { string.replace(/[<>\"\'%;\)\(&\+]/, ''); } return string; } // Remove all spaces from a string function removeSpaces(string) { var newString = ''; for (var i = 0; i < string.length; i++) { if (string.charAt(i) != ' ') newString += string.charAt(i); } return newString; } function isZeroLength(string){ if(trimWhitespace(string) == '') return true; else return false; } function isItemAdded(oListBox){ if(oListBox.length < 1) return false; else return true; } function isItemSelected(oDropDown){ if(oDropDown.length < 2 || oDropDown.selectedIndex < 0 || oDropDown.options[oDropDown.selectedIndex].value < 1) return false; else return true; } function isItemChecked(ids) { for(i=0;i max)) return false; else return true; } function valButton(btn) { var cnt = -1; for (var i=btn.length-1; i > -1; i--) { if (btn[i].checked) {cnt = i; i = -1;} } if (cnt > -1) return true; else return false; }