//Utilerias para formularios
function QuitaCarInvalido(cadenas,carInv)
{
var pos = 0
var cadena =""
var cadena2 =""

cadena = cadenas
cadena2 = cadenas

pos = cadena.indexOf(carInv,pos)
if (pos < 0 ) return cadenas
	
for(var i=0; i < cadena.length; i++)
	{
	pos = cadena.indexOf(carInv,pos)
	if (pos < 0 ) 
		break;
	else	
		cadena2 = cadena.substring(0,pos) + cadena.substr(pos + 1)
		cadena = cadena2
	}
	return cadena2
}

function QuitaComillas(cadenas)
{
var pos = 0
var cadena =""
var cadena2 =""

cadena = cadenas
cadena2 = cadenas

pos = cadena.indexOf("'",pos)
if (pos < 0 ) return cadenas
	
for(var i=0; i < cadena.length; i++)
	{
	pos = cadena.indexOf("'",pos)
	if (pos < 0 ) 
		break;
	else	
		cadena2 = cadena.substring(0,pos) + cadena.substr(pos + 1)
		cadena = cadena2
	}

	return cadena2
}

function BuscaComillas()
{
for(var j = 0; j < window.document.forms.length; j++)
 for(var i = 0; i < window.document.forms[0].elements.length; i++)
	if( document.forms[j].elements[i].type == "text" || document.forms[j].elements[i].type == "textarea")
	{
		window.document.forms[j].elements[i].value = QuitaComillas (window.document.forms[j].elements[i].value)
	}
}

function alfa(v,w){
	var w1,w2,w3,letra
	var Q1='UN    DOS   TRES  CUATROCINCO SEIS  SIETE OCHO  NUEVE '
	var Q ='DIEZ      ONCE      DOCE      TRECE     CATORCE   QUINCE    '
	var W ='DIECISEIS DIECISIETEDIECIOCHO DIECINUEVE' 
	var Q2=Q+W
	var C ='VEINTE   TREINTA  CUARENTA CINCUENTASESENTA  SETENTA  OCHENTA  NOVENTA  '
	var Q ='CIEN         DOSCIENTOS   TRESCIENTOS  CUATROCIENTOSQUINIENTOS   '
	var W ='SEISCIENTOS  SETECIENTOS  OCHOCIENTOS  NOVECIENTOS  '
	var Q3= Q+W
	var tcamb = w;
	var mylen = v;
	mylen = mylen.replace(",",".");
	var punto = mylen.indexOf(".",0);
	if(punto==-1){
		mylen=mylen+'.0000';
	}else{
		mylen=mylen+'00';	
	}	
	l = mylen.length;
	
	while(l<=16){
		mylen='0'+mylen;
		l++;
	}	
	
	l = mylen.length;	
	var xx = mylen.indexOf('.');
	var Z2 = mylen
	var Z3 = Z2.substr(xx-3,3);
	var Z4 = Z2.substr(xx-6,3);
	var Z5 = Z2.substr(xx-9,3);
	var Z6 = Z2.substr(xx-12,3);
	var Z7 = Z2.substr(xx+1,2)

	var sp  = '(';
	var sf  = ')';
	var s   = ' ';
	var sm  = ' ';	
	var smm = ' ';	
	var s
	var Z = 3;

	I=0;
	if(Z3!="000"){
		w1=Z3.substr(I,1);
		w2=Z3.substr(I+1,1);
		w3=Z3.substr(I+2,1);
		//alert(w1+' '+w2+' '+w3)		
		
		while(I<=2){
			if(I==0){
				if(w1!=0){
					if(w1==1){
						if(w2+w3!=0){							
							s=s+'CIENTO '
						}else{
							s=s+Q3.substr((w1-1)*13,13)+' ';
						}	
					}else{													
						s=s+Q3.substr((w1-1)*13,13)+' ';
					}	
				}	
			}
			if(I==1){
				if(w2==1){					
					s=s+Q2.substr(w3*10,10)+' ';
				}
				if(w2==2&&w3!=0){
					s=s+'VEINTI Y ';
					if(w3!=0){
						s=s+Q1.substr((w3-1)*6,6)+' ';							
					}									
				}else{
					if(w2!=0){
						if(w3==0&&w2!=1){
							s=s+C.substr((w2-2)*9,9)+' ';
						}else{							
							if(w3!=0&&w2!=1){
								s=s+C.substr((w2-2)*9,9)+' ';	
								s=s+' Y ';
								s=s+Q1.substr((w3-1)*6,6)+' ';										
							}									
						}	
					}
				}
			}
			if(I==2){
				if(w3!=0&&w2==0){
					s=s+' '+Q1.substr((w3-1)*6,6)+' ';
				}											
			}
			I=I+1;					
		}
	}
	

	I=0;
	if(Z5!="000"){
		w1=Z5.substr(I,1);
		w2=Z5.substr(I+1,1);
		w3=Z5.substr(I+2,1);
		while(I<=2){
			if(I==0){
				if(w1!=0){
					if(w1==1){
						if(w2+w3!=0){
							smm=smm+'CIENTO '
						}
					}else{	
						smm=smm+Q3.substr((w1-1)*13,13)+' ';
					}	
				}	
			}
			if(I==1){
				if(w2==1){
					smm=smm+Q2.substr(w3*10,10)+' ';
				}
				if(w2==2&&w3!=0){
					smm=smm+'VEINTI Y ';
					if(w3!=0){
						smm=smm+Q1.substr((w3-1)*6,6)+' ';							
					}									
				}else{
					if(w2!=0){
						if(w3==0){
							smm=smm+C.substr((w2-2)*9,9)+' ';
						}else{
							if(w3!=0&&w2!=1){
								smm=smm+C.substr((w2-2)*9,9)+' ';	
								smm=smm+' Y ';
								smm=smm+Q1.substr((w3-1)*6,6)+' ';										
							}									
						}	
					}
				}
			}
			if(I==2){
				if(w3!=0&&w2==0){
					smm=smm+' '+Q1.substr((w3-1)*6,6)+' ';
				}											
			}
			I=I+1;					
		}
		if(w1!=0||w2!=0||w3>1){
			smm=smm+'MILLONES '
		}else{
			smm=smm+'MILLON '
		}				
	}
			
													
	I=0;
	if(Z4!="000"){
		w1=Z4.substr(I,1);
		w2=Z4.substr(I+1,1);
		w3=Z4.substr(I+2,1);
		while(I<=2){
			if(I==0){
				if(w1!=0){
					if(w1==1){
						if(w2+w3!=0){
							sm=sm+'CIENTO '
						}else{
							sm=sm+Q3.substr((w1-1)*13,13)+' ';
						}						
					}else{	
						sm=sm+Q3.substr((w1-1)*13,13)+' ';
					}	
				}	
			}
			if(I==1){
				if(w2==1){
					sm=sm+Q2.substr(w3*10,10)+' ';
				}
				if(w2==2&&w3!=0){
					sm=sm+'VEINTI Y ';
					if(w3!=0){
						sm=sm+Q1.substr((w3-1)*6,6)+' ';							
					}									
				}else{
					if(w2!=0){
						if(w2!=1&&w3==0){
						//if(w3==0){
							sm=sm+C.substr((w2-2)*9,9)+' ';
						}else{
							if(w3!=0&&w2!=1){
								sm=sm+C.substr((w2-2)*9,9)+' ';	
								sm=sm+' Y ';
								sm=sm+Q1.substr((w3-1)*6,6)+' ';										
							}									
						}	
					}
				}
			}
			if(I==2){
				if(w3!=0&&w2==0){
					sm=sm+' '+Q1.substr((w3-1)*6,6)+' ';
				}											
			}
			I=I+1;
		}
		sm=sm+'MIL ';
	}	
	if(tcamb=="0"){							
		letra = sp+smm+sm+' '+s+' PESOS '+Z7+'/100 M.N.'+sf;
	}else{
		letra = sp+smm+sm+' '+s+' DOLARES '+Z7+'/100 USD'+sf;		
	}	
	return letra											
}

function alfaP(v){
	var w1,w2,w3,letra
	var Q1='UN    DOS   TRES  CUATROCINCO SEIS  SIETE OCHO  NUEVE '
	var Q ='DIEZ      ONCE      DOCE      TRECE     CATORCE   QUINCE    '
	var W ='DIECISEIS DIECISIETEDIECIOCHO DIECINUEVE' 
	var Q2=Q+W
	var C ='VEINTE   TREINTA  CUARENTA CINCUENTASESENTA  SETENTA  OCHENTA  NOVENTA  '
	var Q ='CIEN         DOSCIENTOS   TRESCIENTOS  CUATROCIENTOSQUINIENTOS   '
	var W ='SEISCIENTOS  SETECIENTOS  OCHOCIENTOS  NOVECIENTOS  '
	var Q3= Q+W
	var mylen = v;
	var punto = mylen.indexOf(".",0);
	if(punto==-1){
		mylen=mylen+'.0000';
	}else{
		mylen=mylen+'00';	
	}	
	l = mylen.length;
	
	while(l<=16){
		mylen='0'+mylen;
		l++;
	}	
	
	l = mylen.length;	
	var xx = mylen.indexOf('.');
	var Z2 = mylen
	var Z3 = Z2.substr(xx-3,3);
	var Z4 = Z2.substr(xx-6,3);
	var Z5 = Z2.substr(xx-9,3);
	var Z6 = Z2.substr(xx-12,3);
	var Z7 = Z2.substr(xx+1,2)

	var sp  = '(';
	var sf  = ')';
	var s   = ' ';
	var sm  = ' ';	
	var smm = ' ';	
	var s
	var Z = 3;

	I=0;
	if(Z3!="000"){
		w1=Z3.substr(I,1);
		w2=Z3.substr(I+1,1);
		w3=Z3.substr(I+2,1);
		//alert(w1+' '+w2+' '+w3)		
		
		while(I<=2){
			if(I==0){
				if(w1!=0){
					if(w1==1){
						if(w2+w3!=0){							
							s=s+'CIENTO '
						}else{
							s=s+Q3.substr((w1-1)*13,13)+' ';
						}	
					}else{													
						s=s+Q3.substr((w1-1)*13,13)+' ';
					}	
				}	
			}
			if(I==1){
				if(w2==1){					
					s=s+Q2.substr(w3*10,10)+' ';
				}
				if(w2==2&&w3!=0){
					s=s+'VEINTI Y ';
					if(w3!=0){
						s=s+Q1.substr((w3-1)*6,6)+' ';							
					}									
				}else{
					if(w2!=0){
						if(w3==0&&w2!=1){
							s=s+C.substr((w2-2)*9,9)+' ';
						}else{							
							if(w3!=0&&w2!=1){
								s=s+C.substr((w2-2)*9,9)+' ';	
								s=s+' Y ';
								s=s+Q1.substr((w3-1)*6,6)+' ';										
							}									
						}	
					}
				}
			}
			if(I==2){
				if(w3!=0&&w2==0){
					s=s+' '+Q1.substr((w3-1)*6,6)+' ';
				}											
			}
			I=I+1;					
		}
	}
	

	I=0;
	if(Z5!="000"){
		w1=Z5.substr(I,1);
		w2=Z5.substr(I+1,1);
		w3=Z5.substr(I+2,1);
		while(I<=2){
			if(I==0){
				if(w1!=0){
					if(w1==1){
						if(w2+w3!=0){
							smm=smm+'CIENTO '
						}
					}else{	
						smm=smm+Q3.substr((w1-1)*13,13)+' ';
					}	
				}	
			}
			if(I==1){
				if(w2==1){
					smm=smm+Q2.substr(w3*10,10)+' ';
				}
				if(w2==2&&w3!=0){
					smm=smm+'VEINTI Y ';
					if(w3!=0){
						smm=smm+Q1.substr((w3-1)*6,6)+' ';							
					}									
				}else{
					if(w2!=0){
						if(w3==0){
							smm=smm+C.substr((w2-2)*9,9)+' ';
						}else{
							if(w3!=0&&w2!=1){
								smm=smm+C.substr((w2-2)*9,9)+' ';	
								smm=smm+' Y ';
								smm=smm+Q1.substr((w3-1)*6,6)+' ';										
							}									
						}	
					}
				}
			}
			if(I==2){
				if(w3!=0&&w2==0){
					smm=smm+' '+Q1.substr((w3-1)*6,6)+' ';
				}											
			}
			I=I+1;					
		}
		if(w1!=0||w2!=0||w3>1){
			smm=smm+'MILLONES '
		}else{
			smm=smm+'MILLON '
		}				
	}
			
													
	I=0;
	if(Z4!="000"){
		w1=Z4.substr(I,1);
		w2=Z4.substr(I+1,1);
		w3=Z4.substr(I+2,1);
		while(I<=2){
			if(I==0){
				if(w1!=0){
					if(w1==1){
						if(w2+w3!=0){
							sm=sm+'CIENTO '
						}else{
							sm=sm+Q3.substr((w1-1)*13,13)+' ';
						}						
					}else{	
						sm=sm+Q3.substr((w1-1)*13,13)+' ';
					}	
				}	
			}
			if(I==1){
				if(w2==1){
					sm=sm+Q2.substr(w3*10,10)+' ';
				}
				if(w2==2&&w3!=0){
					sm=sm+'VEINTI Y ';
					if(w3!=0){
						sm=sm+Q1.substr((w3-1)*6,6)+' ';							
					}									
				}else{
					if(w2!=0){
						if(w2!=1&&w3==0){
						//if(w3==0){
							sm=sm+C.substr((w2-2)*9,9)+' ';
						}else{
							if(w3!=0&&w2!=1){
								sm=sm+C.substr((w2-2)*9,9)+' ';	
								sm=sm+' Y ';
								sm=sm+Q1.substr((w3-1)*6,6)+' ';										
							}									
						}	
					}
				}
			}
			if(I==2){
				if(w3!=0&&w2==0){
					sm=sm+' '+Q1.substr((w3-1)*6,6)+' ';
				}											
			}
			I=I+1;
		}
		sm=sm+'MIL ';
	}	
	letra = sp+smm+sm+' '+s+' PESOS '+Z7+'/100 M.N.'+sf;
	return letra											
}

function letras(vParam1){
  var str = vParam1.value;
  var mylong = str.length;   
  var nvcad = "";
  var mess = "F";
  for(i=0;i<=mylong-1;i++){	
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();	
	if(s!=32){
		if(s<65||s>90){
			if(s==209){
				nvcad = nvcad + mycad;
			}else{
				mess = "T";
				//alert('Este campo no admite el siguiente caracter '+mycad);
				nvcad = nvcad + "";
			}	
		}else{
			nvcad = nvcad + mycad;
		}		  		
	}else{
		nvcad = nvcad + mycad;
	}	
  }
   if(mess=='T'){
	alert('Este campo no admite números ni caracteres especiales, por lo que fueron eliminados.');
   }
   return nvcad; 	
}
function importes(vParam1){
  var str = vParam1.value;
  var mylong = str.length;   
  var nvcad = "";
  var upto = 0;
  var mess = "F";
  for(i=0;i<=mylong-1;i++){
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();
	if(s!=46){
		if(s<48||s>57){
			mess = "T";
			//alert('Este campo no admite este caracter '+mycad);
			nvcad = nvcad + ""
		}else{
			nvcad = nvcad + mycad
		}		  		
	}else{
		if(upto==0){ 		
			nvcad = nvcad + mycad;
			upto = 1;
		}else{
			nvcad = nvcad + "";
		}	
	}	
  }
   if(mess=='T'){
	alert('Este campo no admite letras ni caracteres especiales, por lo que fueron eliminados.');
   }
   return nvcad; 
}
function numero(vParam1){
  var str = vParam1.value;
  var mylong = str.length;   
  var nvcad = "";
  var mess = "F";
  for(i=0;i<=mylong-1;i++){
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();
	if(s<48||s>57){
		mess = "T";
		//alert('Este campo no admite este caracter '+mycad);
		nvcad = nvcad + "";
	}else{
		nvcad = nvcad + mycad;
	}		  		
  }
   if(mess=='T'){
	alert('Este campo no admite letras ni caracteres especiales, por lo que fueron eliminados.');
   }
   return nvcad; 
}
function alfnum(vParam1){
  var str = vParam1.value;
  var mylong = str.length;   
  var nvcad = "";  
  var mess = "F";
  for(i=0;i<=mylong-1;i++){
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();
	if(s!=32){
		if(s<48||s>57){			
			if(s<65||s>90){
				mess = "T";
				//if(s!=45){
				//	nvcad = nvcad + "";	
				//}else{
				//	nvcad = nvcad + mycad;
				//}	
			}else{				
				nvcad = nvcad + mycad;
			}		
		}else{
			nvcad = nvcad + mycad;
		}		  
	}else{
		nvcad = nvcad + mycad;
	}			
  }	 
   if(mess=='T'){
	alert('Este campo no admite caracteres especiales, por lo que fueron eliminados.');
   }

   return nvcad; 
}
function codigop(vParam1){
  var str = vParam1;
  var mylong = str.length;   
  var nvcad = "";
  for(i=0;i<=mylong-1;i++){
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();
	if(s<48||s>57){
		//alert('Este campo no es admite este caracter '+mycad);
		nvcad = nvcad + "";
	}else{
		nvcad = nvcad + mycad;
	}		  		
  }
   return nvcad; 
}
function colonp(vParam1){
  var str = vParam1;
  var mylong = str.length;   
  var nvcad = "";  
  for(i=0;i<=mylong-1;i++){
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();
	if(s!=32){
		if(s<48||s>57){			
			if(s<65||s>90){
				//if(s!=45){
				//	nvcad = nvcad + "";	
				//}else{
				//	nvcad = nvcad + mycad;
				//}	
			}else{				
				nvcad = nvcad + mycad;
			}		
		}else{
			nvcad = nvcad + mycad;
		}		  
	}else{
		nvcad = nvcad + mycad;
	}			
  }	 
   return nvcad; 
}

function r_f_c(vParam1,vPers){
  var str = vParam1;
  var mycad = str.toUpperCase();	
  var mylong = mycad.length; 

  if(vPers=='M'){
		if(mylong>=13||mylong<12){
			alert('La longitud del RFC no corresponde al de una persona moral.')
			return false;
		}			
		var rfc1 = mycad.substr(0,3); 			
		var rfc2 = mycad.substr(3,6); 	
		var rfc3 = mycad.substr(10,3); 	
  }else{
		if(mylong>=14||mylong<13){
			alert('La longitud del RFC no corresponde al de una persona física.')
			return false;
		}			  
		var rfc1 = mycad.substr(0,4); 	
		var rfc2 = mycad.substr(4,6); 	
		var rfc3 = mycad.substr(11,3); 	
  }		
  var lrfc1 = rfc1.length;
  var lrfc2 = rfc2.length; 
  	
  for(i=0;i<=lrfc1-1;i++){
	str1 = rfc1.substr(i,1);
	s = str1.charCodeAt();
	if(s<65||s>90){
		alert('Las primeras '+lrfc1+' posiciones deben ser letras.')
		return false; 
	}		  
  }	 
  for(i=0;i<=lrfc2-1;i++){
	str2 = rfc2.substr(i,1);
	s = str2.charCodeAt();
	if(s<48||s>57){
		alert('A partir de la '+lrfc1+' posición, deben de ser '+lrfc2+' números.')
		return false; 
	}		  
  }	   
  return true;
}
function alfnums(vParam1){
  var str = vParam1;
  var mylong = str.length;   
  var nvcad = "";  
  for(i=0;i<=mylong-1;i++){
	str1 = str.substr(i,1);
	mycad = str1.toUpperCase();	
	s = mycad.charCodeAt();
	if(s!=32){
		if(s<48||s>57){			
			if(s<65||s>90){
				//if(s!=45){
				//	nvcad = nvcad + "";	
				//}else{
				//	nvcad = nvcad + mycad;
				//}	
			}else{				
				nvcad = nvcad + mycad;
			}		
		}else{
			nvcad = nvcad + mycad;
		}		  
	}else{
		nvcad = nvcad + mycad;
	}			
  }	 
   return nvcad; 
}