//AQUI PONDREMOS TODAS LAS FUNCIONES QUE DEBEREMOS DE USAR

var FLAG_GO = true;
var TEXTO_GENERAL = "";
var ventanaAux;
var opc_c = 0;
function goHome(){
  //alert("Hola mundo");
}

function irA( arg ){ 
	forma.accion.value= arg;
	forma.submit();
}

function proceso( funcion )
{
   	forma.funcion.value = funcion;
   	forma.submit();
}
function enfocaElemento(campo){
  eval("document.forms[0]."+campo+".focus()"); //bajamos campo a una variable local
}

function igualaCampoN(campo,valor){
  eval("document.forms[0]."+campo+".value="+valor); //bajamos campo a una variable local
//  eval("alert(document.forms[0]."+campo+".value)"); //bajamos campo a una variable local
}
function igualaCampoT(campo,valor){
  eval("document.forms[0]."+campo+".value='"+valor+"'"); 
//  eval("alert(document.forms[0]."+campo+".value)"); //bajamos campo a una variable local
}
function veURL(url){
  location.href=url;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
/*
function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}
*/

/* Functions that swaps down images. */
function MM_nbGroup(event, grpName) { //v6.0
var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
    if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
      img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
      if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
      nbArr[nbArr.length] = img;
      for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
        if (!img.MM_up) img.MM_up = img.src;
        img.src = img.MM_dn = args[i+1];
        nbArr[nbArr.length] = img;
    } }
  } else if (event == "over") {
    document.MM_nbOver = nbArr = new Array();
    for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])?args[i+1] : img.MM_up);
      nbArr[nbArr.length] = img;
    }
  } else if (event == "out" ) {
    for (i=0; i < document.MM_nbOver.length; i++) { img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
    nbArr = document[grpName];
    if (nbArr) for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
    document[grpName] = nbArr = new Array();
    for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
      nbArr[nbArr.length] = img;
  } }
}


function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function MM_displayStatusMsg(msgStr) { //v1.0
  status=msgStr;
  document.MM_returnValue = true;
}


function saluda(){
  //alert("Hola mundo");
}
function abreVentanita(theURL) { //v2.0
  var features ="toolbar=no,location=no,status=no,menubar=no,scrollbars=auto,resizable=no,top=20,left=20,width=350,height=250";
  var winName  = "ventanaAux";
   ventanaAux = window.open(theURL,winName,features);
}//abreModal
//funcion de llamado a la captura de elementos 


function NoDependientes(){
	input_box=confirm(" ¿Está seguro de no declarar dependientes? ");
	if (input_box==true)
	{ 
  document.forms[0].action="/MDGWeb/ControlUsr?action=MDGNoDependientes";
  document.forms[0].submit();
	}
	else
	{
        ;
	}
}//no dependientes

function toUppercase(tci){
  var result="";
     tci.value = tci.value;

    var str = tci.value.split('');
    for(i=0; i<=str.length-1; i++){
        str[i]  = str[i].toUpperCase();
      result+=str[i];
    }
    tci.value = result;
//return result;
}//toUppercase

function validaLongitud(campo,longitud,MENSAJE){
  var campoEvaluado = campo; //bajamos campo a una variable local
  var x = parseFloat(campoEvaluado.length)-parseFloat(longitud);
//  	  alert(campoEvaluado.length+"-"+longitud+"="+x);
    if(x>=0){
	  return true;
	}else{
	  alert(MENSAJE);
	  return false;
	}
}//validaLongitud


function parseaCURP(campo){

  var CURP_ELM  = "";
  CURP_ELM  = campo.substring(7,8);
//  alert(campo+"-"+CURP_ELM);
  var campoEvaluado = eval("document.forms[0]."+campo+".value"); //bajamos campo a una variable local
  var Edos = new Array('AS', 'BC', 'BS', 'CC','CS','CH','CL','CM','DF','DG','GT','GR','HG','JC','MC','MN','MS','NT','NL','OC','PL','QT','QR','SP','SL','SR','TC','TS','TL','VZ','YN','ZS');
//  alert("CURP:"+campoEvaluado+" - "+campoEvaluado.length+" Arreglo.lenght="+Edos.length);
  if(campoEvaluado.length==0){
  ;//go on
  }else
  if(!(campoEvaluado.length==18 || campoEvaluado.length==11)){
       eval("document.forms[0]."+campo+".focus()");
//	   eval(the_field_name + ".value")
    alert('Alguna de las CURPs de sus dependientes no tiene la longitud debida');
	return false;
  }else
  if(campoEvaluado.length==18 || campoEvaluado.length==11)
  {
  //si tiene la longitud
     //AQUI EXTRAEMOS LOS 18 CARACTERES CADA UNO
    var CURP_NAME = "";
	var CURP_DATE = "";
	var CURP_SEX  = "";
	var CURP_EDO  = "";
	var CURP_HOM  = "";
	var CURP_SEC  = "";

	
     CURP_NAME = campoEvaluado.substring(0,4);
	 CURP_DATE = campoEvaluado.substring(4,10);
	 CURP_SEX  = campoEvaluado.substring(10,11);
	if(campoEvaluado.length==18){
	 CURP_EDO  = campoEvaluado.substring(11,13);
	 CURP_HOM  = campoEvaluado.substring(13,16);
	 CURP_SEC  = campoEvaluado.substring(16,18);
	}	
	var pattern  = /[HM]/;
	if(parseaNAME(CURP_NAME)==false){
       eval("document.forms[0]."+campo+".value=''");	
       eval("document.forms[0]."+campo+".focus()");	
	   alert("Las iniciales estan mal, escribio "+CURP_NAME+", verifiquelo, recuerde que estos caracterés provienen del primer apellido, primera letra y primera vocal interna, del segundo apellido, primera letra. \n En caso de no tener segundo apellido se posiciona una X , Del primer nombre, primera letra . \n En nombres compuestos que comiencen con María o José, se tomará en cuenta el segundo nombre para la asignación de la inicial. ");
	   return false;
	}
	 else
//    if(parseaSEXO(CURP_SEX)==false){
    if(parseaSEXOC(CURP_SEX,CURP_ELM)==false){	
        eval("document.forms[0]."+campo+".value=''");	
        eval("document.forms[0]."+campo+".focus()");	
	 	   alert("El sexo de su CURP es incorrecto, ustes escribio: '"+CURP_SEX+"' \n En ese caso, deberá escribir H para hombre o M para mujer");

	   return false;		
	}
     else
    if(parseaDATE(CURP_DATE)==false){
	        eval("document.forms[0]."+campo+".focus()");
	 	   alert("La fecha de nacimiento es incorrecta, ustes escribió: "+CURP_DATE+" verifiquelo");

	   return false;				  
	}
    else
	if(!campoEvaluado.length==11){
		if(parseaEDO(CURP_EDO)==false){
                eval("document.forms[0]."+campo+".value=''");	
				eval("document.forms[0]."+campo+".focus()");
			   alert("La entidad federativa es errónea, ustes escribió: "+CURP_EDO+", validelo");
		   return false;				  
		}		
		else
		if(parseaHOM(CURP_HOM)==false){
		        eval("document.forms[0]."+campo+".value=''");	
				eval("document.forms[0]."+campo+".focus()");
			   alert("Su homoclave es incorrecta, usted anotó: "+CURP_DATE+" recuerde que son de los apellidos y primer nombre, \n las primeras consonantes internas de cada uno ");
		   return false;
		}
		else
		if(parseaSEC(CURP_SEC)==false){
                eval("document.forms[0]."+campo+".value=''");			
				eval("document.forms[0]."+campo+".focus()");
			   alert("El consecutivo es incorrecto, usted anotó: "+CURP_SEC+", corrijalo");
		   return false;
		}else{
		return true;
		}
	}	
	else{
     return true;
	}//ok
  }//else si tiene la longitud
}//parseaCampito

function parseaSEXOC(campo,curpElm){
    var campoFSex = "sexdep_"+curpElm;
    var campoEvaluadoForma = eval("document.forms[0]."+campoFSex+".value"); //bajamos campo a una variable local
   	var pattern  = /[HM]/; //VALIDA SI ES MACHIN (H) O TRENZUDA (M)
//	  	  	alert("*"+campo+"* vs *"+campoEvaluadoForma+"*");
    if(pattern.test(campo)){
	  if( ((campo=='H' && campoEvaluadoForma=='M ' ) || (campo=='M' && campoEvaluadoForma=='F ' )) || (campo=='H' && campoEvaluadoForma=='M' ) || (campo=='M' && campoEvaluadoForma=='F' ) ){
//	  	  	alert("*"+campo+"* vs *"+campoEvaluadoForma+"*  OK");
	    return true;
	  }//
	  else{
//	  	  	alert("*"+campo+"*-*"+campoEvaluadoForma+"* NOT OK");
	   return false;
	  }
	}else{
	 return false;
	}
}//function 
function parseaSEXO_(campo){
   	var pattern  = /[HM]/; //VALIDA SI ES MACHIN (H) O TRENZUDA (M)
   return pattern.test(campo);
}//function 
function parseaNAME(campo){
   var pattern  =/[A-Z][A-Z][A-Z][A-Z]/; //VALIDA SI EFECTIVAMENTE TIENE CARACTERES
   return pattern.test(campo);
}//function 
function parseaDATE(campo){
   	var pattern  =/[0-9][0-9][0-1][0-9][0-3][0-9]/; //VALIDA SI EFECTIVAMENTE TIENE CARACTERES
   return pattern.test(campo);
}//function 
function parseaEDO(campo){
  var pattern = /(AS|BC|BS|CC|CS|CH|CL|CM|DF|DG|GT|GR|HG|JC|MC|MN|MS|NT|NL|OC|PL|QT|QR|SP|SL|SR|TC|TS|TL|VZ|YN|ZS)/;
  return pattern.test(campo);
}//function parseaEDO
function parseaHOM(campo){
   	var pattern  = /[A-Z][A-Z][A-Z]/; //VALIDA SI EFECTIVAMENTE TIENE CARACTERES
   return pattern.test(campo);
}//function parseHOM
function parseaSEC(campo){
   	var pattern  = /[0-9][0-9]/; //VALIDA SI EFECTIVAMENTE TIENE CARACTERES
   return pattern.test(campo);
}//function parseaSEC
function validaCampoTexto(campo){
  var campoEvaluado = eval("document.forms[0]."+campo+".value"); //bajamos campo a una variable local
  if(campoEvaluado=='.' || campoEvaluado==',' || campoEvaluado=='-' || campoEvaluado=='_' || campoEvaluado=='\'' || campoEvaluado=='´'  ){
   campoEvaluado=campoEvaluado+"206"; //si se topa con uno asi de solapa, lo truena
  }//si se topo con algun caractere anomalo que no este en el patron, le agrega numeros y lo truena
if(campoEvaluado.length>0){
  var pattern = /[ˆÁÉÍÓÚáéíóú@?¿=!"#\\0-9]+/;
  var validador = false;
  if(pattern.test(campoEvaluado)==false){
		   return true;
  }else{
    alert("Escriba solo caractéres");
		   return false;
  }
 }//si tiene mas de 1
}//validaCampoTexto


function sumaValidezTexto(campo){
 var valorRetorno=0;
 var campoEvaluado = eval("document.forms[0]."+campo+".value"); //bajamos campo a una variable local
  if(campoEvaluado=='' || campoEvaluado==' ' || campoEvaluado.length ==0){
    valorRetorno=0;
  }else{
    valorRetorno=1;
  }
  return valorRetorno;
}//sumaValidezTexto

function validaRelleno(campo,textoAlert){
 //var valorRetorno=0;
 var campoEvaluado = eval("document.forms[0]."+campo+".value"); //bajamos campo a una variable local
  if(campoEvaluado=='' || campoEvaluado==' ' || campoEvaluado.length ==0){
      alert(textoAlert);
	  return false;
  }else{
     ;
	 return true;
  }
//  return valorRetorno;
}//sumaValidezTexto

function recargaForma(url){
  document.forms[0].action=url;
  document.forms[0].submit();
}//


function comparaCamposForma(campo1,campo2,MENSAJE){
    var campoTxt_1 = campo1;
    var campoTxt_2 = campo2;
	if(campoTxt_1==campoTxt_2){
	  return true;
	}
	else{
	  alert(MENSAJE);
	  return false;
	}
}//usara argumentos comparaCampos

function maxCharsTexto(campo,campoCounter,long) {
	var m = eval("document.forms[0]."+campo+".value"); //bajamos campo a una variable local document.formulario.forloc.value;
	var mm = m.length;
	var mmPre = eval("document.forms[0]."+campoCounter+".value");
	mm = mmPre;
	if(mm >= long) {
	alert("Ha excedido el máximo de caracteres de "+long);
	var str      = eval("document.forms[0]."+campoCounter+".value");
	var strFinal = str.substr(0,long)+"...";
	eval("document.forms[0]."+campo+".value") = strFinal;
	}
	var recarga = "maxCharsTexto('"+campo+"','"+campoCounter+"',"+long+")";
	setTimeout(recarga,0);
}//maxCharsTexto

function maxCharsMotrec() {
var m = document.forms[0].motrec.value;
var mm = m.length;
document.forms[0].motrecL.value=mm;
if(mm >= 250) {
alert("Ha excedido el máximo de caracteres de 250");
var str      = document.forms[0].motrec.value;
var strFinal = str.substr(0,245)+"...";
document.forms[0].motrec.value = strFinal;
}
setTimeout("maxCharsMotrec()" ,0);
}//max chars FORLOC


function retornar(cosa){

	document.forms[0].action="/MDGWeb/ControlUsr?action="+cosa;
	document.forms[0].submit();
}//regresar


function validaMail(myString) {
   var newString = myString.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi);
   if (!newString){
    alert("La dirección de correo: "+myString+" \nes inválida, rectifique");
	return false;
	}
   else {
     return true;
   }
}//check email por patrones


 

function calendario(campo) {
  newWin = window;
  setDateField(campo);
  newWin = window.open('esp/calendar.html', 'cal', 'dependent=yes, width=210, height=230, screenX=200, screenY=300, titlebar=yes');
}//funcion de calendario del area, importar el  calendar.js y el calendar.html en root

function Trim(s) 
{
  // Remove leading spaces and carriage returns
  
  while ((s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r'))
  {
    s = s.substring(1,s.length);
  }
  // Remove trailing spaces and carriage returns
  while ((s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r'))
  {
    s = s.substring(0,s.length-1);
  }
  return s;
}//Trim(s)

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

