|
Server : Apache/2.4.62 System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64 User : www ( 80) PHP Version : 8.3.8 Disable Function : NONE Directory : /domains/logicswapweb/aplicaciones/admon/newsletter/js/ |
Upload File : |
function quepaso(cod,acierto){
var arResul =cod.split("|");
switch(arResul[0]){
case acierto:
alert("Expresion correcta");
return true; break;
case "[001]":
alert("Un nombre de dominio debe contener por lo menos 2 y maximo 57 caracteres en:("+arResul[1]+")");
return false; break;
case "[002]":
alert("Un nombre de dominio de dos caracteres debe contener solo numeros en:("+arResul[1]+")");
return false; break;
case "[003]":
alert("Un nombre de dominio debe contener por lo menos 2 y maximo 57 caracteres en:("+arResul[1]+")");
return false; break;
case "[004]":
alert("Un nombre de dominio solo puede contener letras minuscula, n�meros y guiones en:("+arResul[1]+")");
return false; break;
case "[005]":
alert("Un nombre de dominio no puede iniciar o terminar con guion en:("+arResul[1]+")");
return false; break;
case "[006]":
alert("Un nombre de dominio no puede contener dos guiones seguidos en:("+arResul[1]+")");
return false; break;
case "[007]":
alert("El tipo de sitio o pais al que pertenece debe contener maximo 3 caracteres y minimo 2 en:("+arResul[1]+")");
return false; break;
case "[008]":
alert("El tipo de sitio o pais al que pertenece debe contener solo letras minusculas en:("+arResul[1]+")");
return false; break;
case "[009]":
alert("El nombre de un directorio en la ruta solo puede contener letras mayusculas y minusculas sin acento, n�meros, espacios o guiones. en:("+arResul[1]+")");
return false; break;
case "[010]":
alert("La estructura de una direcci�n web esta compuesta por: <protocolo>://<subdominio>.<dominio>.<tipo>.<pais>/<ruta>. No siendo obligatorio colocar el pais o la ruta en:("+arResul[1]+")");
return false; break;
case "[011]":
alert("El nombre de un directorio o archivo en la ruta no puede iniciar o terminar con espacios en blanco en:("+arResul[1]+")");
return false; break;
case "[012]":
alert("El nombre de un directorio o archivo en la ruta no puede contener dos espacios seguidos en:("+arResul[1]+")");
return false; break;
case "[013]":
alert("El nombre de archivo al que direcciona no es un documento en :("+arResul[1]+")");
return false; break;
case "[014]":
alert("El nombre del documento en la ruta solo puede contener letras mayusculas y minusculas sin acento, n�meros, espacios, guiones o puntos. en:("+arResul[1]+")");
return false; break;
case "[015]":
alert("El la extensi�n del documento en la ruta solo puede contener letras minusculas sin acento, y n�meros . en:("+arResul[1]+")");
return false; break;
case "[016]":
alert("El la extensi�n del documento en la ruta debe contener por lo menos 2 y maximo 5 careacteres. en:("+arResul[1]+")");
return false; break;
case "[017]":
alert("La ruta no debe contener dos slash seguidos (//) ");
return false; break;
default:
alert("codigo no encontrado"+cod);
return false;
}
}
function checkUrl(cad){
var pos = cad.indexOf("/");
var site = cad.substr(0,pos);
var ruta = cad.substr(pos+1,cad.length);
if(pos==-1){site=cad; ruta="";}
//alert("sitio:("+site+")\nruta:("+ruta+")");
var full = "[000]";
var resulS = checkSite(site,full);
if(resulS==full){
var resulR = checkRuta(ruta,full);
if(resulS!=full){
quepaso(resulS,full);
return false;
}else{
return true;
}
}else{
quepaso(resulS,full);
return false;
}
}
/******************************************************************************************/
// funciones para validar la ruta en el servidor
/******************************************************************************************/
function checkRuta(cad1,aciert){
var arrayRuta = cad1.split("/");
var sC="";
if(arrayRuta.length==0||arrayRuta[0].length==0){
return aciert;
}else{
if(arrayRuta.length==1){
return checkFile(arrayRuta[0],aciert);
}else{
for(var i=0; i<(arrayRuta.length-1); i++){
sC = checkCarpeta(arrayRuta[i],aciert);
if(sC!=aciert){
i=arrayRuta.length+10;
return sC;
}
}
return checkFile(arrayRuta[arrayRuta.length-1],aciert);
}
}
}
function checkFile(cad2,acier){
var arrayFile = cad2.split("?");
var chardiferentes =/[^a-zA-Z0-9_ -]/;
var espacioseguido = /\s{2,}/;
var inifiniespacio =/^\s|\s$/;
if(arrayFile.length==0){
return acier;
}else{
if(arrayFile.length==1){//no hay variables
return checkDoc(arrayFile[0],acier,false);
}else{//hay variables
var sD = checkDoc(arrayFile[0],acier,true);
if(sD==acier){
return acier;//checkVar(arrayFile[1],acier);
}else{
return sD;
}
}
}
}
function checkDoc(cad3,acierto,variables){
var arDoc = cad3.split(".");
var chardiferentes =/[^a-zA-Z0-9_ -\.]/;
var espacioseguido = /\s{2,}/;
var inifiniespacio =/^\s|\s$/;
if(arDoc.length<2){//no es un documento.
if(!variables){
return "[013]|"+cad3;
}else{
return acierto;
}
}else{
var namedoc = "";
if(arDoc.length==2){
namedoc = arDoc[0];
}else{
for(var i=0; i<(arDoc.length-2); i++){
namedoc+=arDoc[i];
}
}
if(chardiferentes.test(namedoc)){
return "[014]|"+cad3;
}else{
if(inifiniespacio.test(namedoc)){
return "[011]|"+cad3;
}else{
if(espacioseguido.test(namedoc)){
return "[012]|"+cad3;
}else{
var sE = checkExt(arDoc[arDoc.length-1],acierto,variables);
if(sE==acierto){
return acierto;
}else{
return sE;
}
}
}
}
}
}
function checkExt(cad4,aci,variables){
var chardiferentes = /[^a-z0-9]/;
var hayespacio =/\s/;
if(cad4.length==0){
if(!variables){
return "[016]|"+cad4;
}else{
return aci;
}
}else{
if(chardiferentes.test(cad4)){
return "[015]|"+cad4;
}else{
if(cad4.length>=2 && cad4.length<=5){
return aci;
}else{
return "[016]|"+cad4;
}
}
}
}
function checkCarpeta(cad5,acerto){
var chardiferentes =/[^a-zA-Z0-9_ -]/;
var espacioseguido = /\s{2,}/;
var inifiniespacio =/^\s|\s$/;
if(cad5.length>0){
if(chardiferentes.test(cad5)){
return "[009]|"+cad5;
}else{
if(inifiniespacio.test(cad5)){
return "[011]|"+cad5;
}else{
if(espacioseguido.test(cad5)){
return "[012]|"+cad5;
}else{
return acerto;
}
}
}
}else{
return "[017]|"+cad5;
}
}
/******************************************************************************************/
/******************************************************************************************/
/******************************************************************************************/
// funciones para validar el servidor
/******************************************************************************************/
function checkSite(cad6,acierto){//no considera "http://"
var arrayServer = cad6.split(".");
var numVec = arrayServer.length;
//alert(numVec+" divisiones")
if(numVec<3){
return "[010]|"+cad6;
}else{
if(numVec>4){
return "[010]|"+cad6;
}else{
var sD = checkDominio(arrayServer[0],acierto);
if(sD==acierto){
//alert("acierto en :("+arrayServer[0]+")")
sD = checkDominio(arrayServer[1],acierto);
if(sD==acierto){
//alert("acierto en :("+arrayServer[1]+")")
var sT = checkTipoPais(arrayServer[2],acierto);
if(numVec==3){
if(sT==acierto){
//alert("acierto en :("+arrayServer[2]+")")
return acierto;
}else{
//alert("fallo en :("+arrayServer[2]+")")
return sT;
}
}else{
if(sT==acierto){
//alert("acierto en :("+arrayServer[2]+")")
sT = checkTipoPais(arrayServer[3],acierto);
if(sT==acierto){
//alert("acierto en :("+arrayServer[3]+")")
return acierto;
}else{
//alert("fallo en :("+arrayServer[3]+")")
return sT;
}
}else{
//alert("fallo en :("+arrayServer[2]+")")
return sT;
}
}
}else{
//alert("fallo en :("+arrayServer[1]+")")
return sD;
}
}else{
//alert("fallo en :("+arrayServer[0]+") *"+ sD +"*")
return sD;
}
}
}
}
function checkDominio(cad7,acrto){
var haycharnonumero = /[^0-9]/;
var inifiniguion = /^-|^_|_$|-$/;
var guionseguido = /__|--|_-|-_/;
var chardiferentes = /[^a-z0-9_-]/;
if(cad7.length<2){
return "[001]";
}else{
if(cad7.length==2){
if(haycharnonumero.test(cad7)){
return "[002]|"+cad7;
}else{
return acrto;
}
}else{
if(cad7.length>57){
return "[003]|"+cad7;
}else{
if(chardiferentes.test(cad7)){
return "[004]|"+cad7;
}else{
if(inifiniguion.test(cad7)){
return "[005]|"+cad7;
}else{
if(guionseguido.test(cad7)){
return "[006]|"+cad7;
}else{
return acrto;
}
}
}
}
}
}
}
function checkTipoPais(cad8,aco){
// caso es por si hay que diferenciar entre tipo y pais.// por programar claro!
var haycharnoletra =/[^a-z]/;
if(cad8.length>3 || cad8.length<=0){
return "[007]|"+cad8;
}else{
if(haycharnoletra.test(cad8)){
return "[008]|"+cad8;
}else{
return aco;
}
}
}
/******************************************************************************************/
/******************************************************************************************/
function prueba(elm){
var lng = elm.length;
for (i=0;i<lng;i++){
key = elm.charCodeAt(i);
alert(key);
}
}
function testeo(elm){
var lng = elm.length;
for (i=0;i<lng;i++){
key = elm.charCodeAt(i);
alert(elm[i]+": "+key);
}
}