//====================================== //Nome: GenJsValidateUrl //Linguagem: JavaScript //Descrição: Essa função recebe uma Url e valida sua máscara // //Autor: Equipe Biblioteca Marlin // //Data: 12/06/2002 // //Parâmetros de entrada: // - pStrFormattedR => Url de retorno // - pStrToValidate => Url a ser validada // - pIntTamMin => Tamanho mínimo da Url // - pIntTamMax => Tamanho máximo da Url // - //Retorno: Código de erro // //Informações adicionais: // + Funções: // - FncJsVerifyIntParameter(pIntParameter, pIntDefValue) // - // + Includes: // - // + Objetos: // - // + Stored Procedures: // - //Historico Alteracao: // - 04/07/2002 Thyago Consort // - //====================================== function GenJsValidateUrl(pStrFormattedR, pStrToValidate, pIntTamMin, pIntTamMax){ var lObjRegExp; var lStrRegExp; var lStrFormatted; var p = new Array; lStrFormatted = pStrToValidate; lStrFormatted = lStrFormatted.replace(/^\s*/, ''); lStrFormatted = lStrFormatted.replace(/\s*$/, ''); pStrFormattedR[0] = pStrToValidate; //Verificando parâmetros de entrada e valores default p[0] = pIntTamMin; if (!FncJsVerifyIntParameter(p,0)) { return -11; } pIntTamMin = p[0]; p[0] = pIntTamMax; if (!FncJsVerifyIntParameter(p,0)) { return -11; } pIntTamMax = p[0]; if (lStrFormatted == "") { if (pIntTamMin > 0) { return -320; } return 0; } //Montando a expressão regular de validação lStrRegExp = '^'; lStrRegExp = lStrRegExp + '(http://)?'; lStrRegExp = lStrRegExp + '\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+'; //Mesma validação do lado direito do @, no e-mail; lStrRegExp = lStrRegExp + '(\\/([^\\\\\/\\:\\*\\?\\"\\<\\>\\|]){1,255})*'; //Validação de diretórios e arquivos (qualquer caractere diferente de {'\','/',':','*','?','"','<','>','|'} lStrRegExp = lStrRegExp + '$'; lObjRegExp = new RegExp(lStrRegExp); if (!lObjRegExp.test(lStrFormatted)) { return -321; } pStrFormattedR[0] = lStrFormatted.replace("-",''); // Testa o tamanho if (lStrFormatted.length < pIntTamMin) { return -322; } if ((pIntTamMax > 0) && (lStrFormatted.length > pIntTamMax)) { return -323; } return 0; }