function validateForminsc(form1) { var reason = ""; reason += validateNoBlank(form1.nomeproj,'Nome do projeto'); reason += validateText(form1.nomecomp,'Nome completo do promotor'); reason += validateDate(form1.datanasc,'Data nascimento'); reason += validateNoBlank(form1.bi_cc,'Número de identificação (BI ou CC)'); reason += validateNif(form1.nif,'NIF'); reason += validateAddress(form1.morada,'Morada'); reason += validatePostalCode(form1.codpostal,'Código postal'); reason += validateCity(form1.localidade,'Localidade'); if (form1.telef.value!=''){ reason += validatePhone(form1.telef,'Telefone'); } if (form1.telem.value!=''){ reason += validatePhone(form1.telem,'Telemóvel'); } reason += validateEmail(form1.email,'E-mail'); reason += validateNoBlank(form1.formacad,'Formação académica'); reason += validateNoBlank(form1.sitprof,'Situação profissional'); reason += validateNoBlank(form1.setorativ,'Setor/área de atividade'); reason += validateNoBlank(form1.desctrab,'Descrição clara e concreta do trabalho/projeto a desenvolver'); reason += validateNoBlank(form1.periododuracao,'Período/duração da utilização'); reason += validateNoBlank(form1.fimdestino,'Fim a que se destina, referindo o âmbito da utilização do espaço, os objetivos, os recursos e as pessoas envolvidas'); if (grecaptcha.getResponse() == ""){ reason += "Não fez a verificação do reCAPTCHA!"; } if (reason != "") { alert("Alguns campos necessitam ser corrigidos:\n" + reason); return false; } alert("A sua mensagem vai ser enviada para os nossos serviços.\n Pretendemos ser breves em responder."); form1.submit(); } function validateFormcand(form1) { var reason = ""; reason += validateNoBlank(form1.nomeprojecto,'Nome do Projeto'); reason += validateText(form1.promo1_nome,'Nome do Promotor 1'); reason += validateAddress(form1.promo1_morada,'Morada do Promotor 1'); reason += validatePostalCode(form1.promo1_codpostal,'Código postal do Promotor 1'); reason += validateCity(form1.promo1_local,'Localidade do Promotor 1'); reason += validateDate(form1.promo1_datanasc,'Data Nascimento do Promotor 1'); reason += validateNif(form1.promo1_nif,'NIF do Promotor 1'); reason += validateEmail(form1.promo1_email,'E-mail do Promotor 1'); reason += validatePhone(form1.promo1_telef,'Telefone/Telemóvel do Promotor 1'); reason += validateNoBlank(form1.promo1_formaca,'Formação Académica do Promotor 1'); reason += validateNoBlank(form1.promo1_sitprof,'Situação Profissional do Promotor 1'); reason += validateNoBlank(form1.caracprojecto,'Caracterize a atividade principal do projeto'); reason += validateNoBlank(form1.espativprinc,'Especifique em que consiste a atividade principal'); reason += validateNoBlank(form1.mercadoalvo,'Qual é o mercado-alvo?'); reason += validateNoBlank(form1.diagpromo,'Trace um breve diagnóstico dos promotores'); reason += validateNoBlank(form1.motivpromo,'Aponte as principais motivações dos promotores na realização do projeto'); reason += validateNoBlank(form1.pontosfortesfrac,'Apresente, de forma sumária, os pontos fortes e fracos dos promotores'); reason += validateNoBlank(form1.fasedesenv,'Qual é a fase de desenvolvimento do projeto?'); reason += validateNoBlank(form1.formjurid,'Tem forma jurídica? Qual?'); reason += validateNoBlank(form1.designsocial,'Designação social'); reason += validateNoBlank(form1.carainovproj,'Como é que justifica o caráter inovador do projeto?'); reason += validateNoBlank(form1.viabilidade,'Como é que justifica a sua viabilidade?'); reason += validateNoBlank(form1.objproj,'Defina os objetivos para o projeto (qualitativos e quantitativos)'); reason += validateNoBlank(form1.aprovpotlocaisreg,'De que forma o projeto contribui para o aproveitamento das potencialidades locais e regionais?'); reason += validateNumerico(form1.montanteinvest,'Montante do investimento'); reason += validateNumerico(form1.postostrab,'Postos de trabalho'); reason += validateNoBlank(form1.razoeseim,'Razões para contactar o Espaço Inovação Mealhada:'); if (grecaptcha.getResponse() == ""){ reason += "Não fez a verificação do reCAPTCHA!"; } if (reason != "") { alert("Alguns campos necessitam ser corrigidos:\n" + reason); return false; } alert("A sua mensagem vai ser enviada para os nossos serviços.\n Pretendemos ser breves em responder."); form1.submit(); } function validateFormNews(form1){ var reason = ""; reason += validateEmail(form1.EMAIL,'E-mail',' o seu'); if (form1.gdpr.checked == false){ reason += "Falta aceitar a política de privacidade para receber a nossa Newsletter!"; } if (reason != "") { alert("Alguns campos necessitam ser corrigidos:\n" + reason); return false; } form1.submit(); } function validateFormmail(form1) { var reason = ""; if (grecaptcha.getResponse() == ""){ alert("Não fez a verificação do reCAPTCHA!") return false; } reason += validateText(form1.nome,'Nome Completo',' o seu'); reason += validatePhone(form1.telefone,'Telf/Telm'); reason += validateEmail(form1.email,'O E-mail', 'o seu'); if (reason != "") { alert("Alguns campos necessitam ser corrigidos:\n" + reason); return false; } form1.submit(); } function validateFormmens(form1) { var reason = ""; reason += validateText(form1.nome,'Nome',' o seu'); reason += validateEmail(form1.email); reason += validateonlyText(form1.mensagem,'Comentário',' o seu'); if (reason != "") { alert("Alguns campos necessitam ser corrigidos:\n" + reason); return false; } alert("Todos os campos estão preenchidos correctamente."); form1.submit(); } function validateNoBlank(fld,campo) { var error = ""; var illegalChars= /[\(\)\<\>\;\\\"\[\]]/; var numeric = /[0-9]/; if (fld.value == "") { fld.style.background = '#f5adad'; error = campo+".\n"; } else if (fld.value.length < 2) { fld.style.background = '#f5adad'; error = campo+" - Tem que introduzir pelo menos duas letras.\n"; } else { fld.style.background = 'White'; } return error; } function validateText(fld,campo) { var error = ""; var illegalChars= /[\(\)\<\>\;\\\"\[\]]/; var numeric = /[0-9]/; if (fld.value == "") { fld.style.background = '#f5adad'; error = campo+".\n"; } else if (fld.value.length < 2) { fld.style.background = '#f5adad'; error = campo+" - Tem que introduzir pelo menos duas letras.\n"; } else if (fld.value.match(numeric)) { fld.style.background = '#f5adad'; error = campo+" - Não aceita dados numéricos.\n"; } else if (fld.value.match(illegalChars)) { fld.style.background = '#f5adad'; error = campo+" - Contém caracteres inválidos.\n"; } else { fld.style.background = 'White'; } return error; } function validateNumerico(fld,campo) { var error = ""; var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, ''); var alpha = /[a-zA-Z]/; if (fld.value == "") { error = campo+" - Não introduziu nenhum número.\n"; fld.style.background = '#f5adad'; } else if (isNaN(parseInt(stripped))) { error = campo+" - Contém caracteres inválidos.\n"; fld.style.background = '#f5adad'; } else if (fld.value.match(alpha)){ error = campo+" - Contém caracteres inválidos.\n"; fld.style.background = '#f5adad'; } else { fld.style.background = 'White'; } return error; } function validateAddress(fld,campo) { var error = ""; if (fld.value.length == 0) { fld.style.background = '#f5adad'; error = campo+" - Não introduziu a sua morada.\n"; } else { fld.style.background = 'White'; } return error; } function validateCity(fld,campo) { var error = ""; if (fld.value.length == 0) { fld.style.background = '#f5adad'; error = campo+" - Não introduziu a sua morada.\n"; } else { fld.style.background = 'White'; } return error; } function validatePostalCode(fld,campo) { var error = ""; var stripped = fld.value.replace(/[\(\)\.\ ]/g, ''); if (fld.value == "") { fld.style.background = '#f5adad'; error = campo+" - Não introduziu nenhum Cód. Postal.\n"; } else if(isNaN(parseInt(stripped))){ fld.style.background = '#f5adad'; error = campo+" - Contém caracteres inválidos (ex:1234-000).\n"; } else if(fld.value.length !=8){ fld.style.background = '#f5adad'; error = campo+" - São necessários sete dígitos e um hífen (ex: 1234-000).\n"; } else if(fld.value.length == 8){ reZip = new RegExp(/(^\d{4}-\d{3}$)/); if(!reZip.test(fld.value)){ fld.style.background = '#f5adad'; error = campo+" - Código Postal incorrecto (ex: 1234-000).\n"; } } else { fld.style.background = 'White'; } return error; } function trim(s){ return s.replace(/^\s+|\s+$/, ''); } function validatePhone(fld,campo) { var error = ""; var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, ''); var alpha = /[a-zA-Z]/; if (fld.value == "") { error = campo+" - Não introduziu nenhum número.\n"; fld.style.background = '#f5adad'; } else if (isNaN(parseInt(stripped))) { error = campo+" - Contém caracteres inválidos.\n"; fld.style.background = '#f5adad'; } else if (fld.value.match(alpha)){ error = campo+" - Contém caracteres inválidos.\n"; fld.style.background = '#f5adad'; } else if (!(stripped.length == 9)) { error = campo+" - Tem que ter 9 dígitos.\n"; fld.style.background = '#f5adad'; } else { fld.style.background = 'White'; } return error; } function validateNif(fld,campo) { var error = ""; var stripped = fld.value.replace(/[\(\)\.\-\ ]/g, ''); var alpha = /[a-zA-Z]/; if (fld.value == "") { error = campo+" - Não introduziu nenhum número.\n"; fld.style.background = '#f5adad'; } else if (isNaN(parseInt(stripped))) { error = campo+" - Contém caracteres inválidos.\n"; fld.style.background = '#f5adad'; } else if (fld.value.match(alpha)){ error = campo+" - Contém caracteres inválidos.\n"; fld.style.background = '#f5adad'; } else if (!(stripped.length == 9)) { error = campo+" - Tem que ter 9 dígitos.\n"; fld.style.background = '#f5adad'; } else { fld.style.background = 'White'; } return error; } function validateEmail(fld,campo) { var error=""; var tfld = trim(fld.value); // value of field with whitespace trimmed off var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ; var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ; if (fld.value == "") { fld.style.background = '#f5adad'; error = campo+" - Não introduziu nenhum e-mail.\n"; } else if (!emailFilter.test(tfld)) { //test email for illegal characters fld.style.background = '#f5adad'; error = campo+" - Por favor introduza um e-mail válido.\n"; } else if (fld.value.match(illegalChars)) { fld.style.background = '#f5adad'; error = campo+" - Contém caracteres inválidos.\n"; } else { fld.style.background = 'White'; } return error; } function validateDate(fld,campo) { var error = ""; var stripped = fld.value.replace(/[\(\)\.\ ]/g, ''); var minYear = 1902; var maxYear = (new Date()).getFullYear(); re = new RegExp(/^(\d{4})\/(\d{1,2})\/(\d{1,2})$/); // regular expression to match required date format if (fld.value == "aaaa-mm-dd"){ fld.style.background = '#f5adad'; error = campo+" - Introduza uma data válida"; } else if (isNaN(parseInt(stripped))) { fld.style.background = '#f5adad'; error = campo+" - Contém caracteres inválidos.\n"; } else if(fld.value != "") { if(regs = fld.value.match(re)) { if(regs[1] < minYear || regs[1] > maxYear) { fld.style.background = '#f5adad'; error = campo+" - Ano inválido: " + regs[1] + " - deve ser de " + minYear + " a " + maxYear +"\n"; } else if(regs[2] < 1 || regs[2] > 12) { fld.style.background = '#f5adad'; error = campo+" - Mês inválido: " + regs[2] +"\n"; } else if(regs[3] < 1 || regs[3] > 31) { fld.style.background = '#f5adad'; error = campo+" - Dia inválido: " + regs[3] +"\n"; } else { fld.style.background = 'White'; } } else { fld.style.background = '#f5adad'; error = "Formato de data inválido: " + fld.value + " (ex: aaaa/mm/dd)\n"; } } else { fld.style.background = 'White'; } return error; }