// SCRIPT : FECHA ACTUAL
// -------------------------------------------------------
var date = new Date()
var ańo = date.getYear()
var dia = date.getDay()
var mes = date.getMonth()
var ndia = date.getDate()
if (dia==0) {var dia="Domingo"}
if (dia==1) {var dia="Lunes"}
if (dia==2) {var dia="Martes"}
if (dia==3) {var dia="Miercoles"}
if (dia==4) {var dia="Jueves"}
if (dia==5) {var dia="Viernes"}
if (dia==6) {var dia="Sabado"}
if (mes==0) {var mes="Enero"}
if (mes==1) {var mes="Febrero"}
if (mes==2) {var mes="Marzo"}
if (mes==3) {var mes="Abril"}
if (mes==4) {var mes="Mayo"}
if (mes==5) {var mes="Junio"}
if (mes==6) {var mes="Julio"}
if (mes==7) {var mes="Agosto"}
if (mes==8) {var mes="Septiembre"}
if (mes==9) {var mes="Octubre"}
if (mes==10) {var mes="Noviembre"}
if (mes==11) {var mes="Diciembre"}
fecha = dia + " " + ndia + " de " + mes + " del " + ańo

// SCRIPT : MENSAJE EN LA BARRA DE ESTADO 
// -------------------------------------------------------
message     = "Inversiones RAL, S.A. de C.V.^" +
              fecha+"^" +
              "^"
scrollSpeed = 50
lineDelay   = 5000
txt         = ""

function scrollText(pos) {
    if (message.charAt(pos) != '^') {
      txt    = txt + message.charAt(pos)
      status = txt
      pauze  = scrollSpeed
    }
    else {
      pauze = lineDelay
      txt   = ""
      if (pos == message.length-1) pos = -1
    }
    pos++
    setTimeout("scrollText('"+pos+"')",pauze)
  }
  
scrollText(0)

// SCRIPT : INHABILITAR BOTON DERECHO

var mensaje="Botón derecho inhabilitado"; 

function click(e)
{ 
	if (document.all)
	{ 
		if (event.button == 2)
		{ 
			alert(mensaje); 
			return false; 
		} 
	} 
	if (document.layers) 
	{ 
		if (e.which == 3) 
		{	 
			alert(mensajee); 
			return false; 
		} 
	} 
} 
	
if (document.layers) 
{ 
	document.captureEvents(Event.MOUSEDOWN); 
} 
document.onmousedown=click; 

// SCRIPT MANEJO DE IMAGENES

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_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];}
}

// SCRIPT : SOLO DIGITOS

var isIE = document.all?true:false;
var isNS = document.layers?true:false;

function onlyDigits(e,decReq)
{
	var key = (isIE) ? window.event.keyCode : e.which;
	var obj = (isIE) ? event.srcElement : e.target;
	var isNum = (key > 47 && key < 58) ? true:false;
	var dotOK = (key==46 && decReq=='decOK' && (obj.value.indexOf(".")<0 || obj.value.length==0)) ? true:false;
	window.event.keyCode = (!isNum && !dotOK && isIE) ? 0:key;
	e.which = (!isNum && !dotOK && isNS) ? 0:key;
	return (isNum || dotOK);
}

// SCRIPT : SELECCIONA CHECKBOX

function SeleccionaTodos(chkbox)
{
	for (var i=0;i < document.forms[0].elements.length;i++)
	{
		var elemento = document.forms[0].elements[i];
		if (elemento.type == "checkbox")
		{
			elemento.checked = chkbox.checked
		}
	}
}

// SCRIPT : OCULTA - MUESTRA >> LAYERS

function MM_showHideLayers()
{
	var ancho_icono=200;
	var alto_icono=60;
	var Version4 = (parseInt(navigator.appVersion) >= 4);
	var NS4 = (navigator.appName == "Netscape" && parseInt(navigator.appVersion) >= 4);
	var layerObj = (NS4) ? 'document' : 'document.all';
	var styleObj = (NS4) ? '' : '.style';
	var ancho = 0; alto =0;
	var posx=0; posy=0;
	var nom_layer = "";
	
	var desplazamiento = 0;
	var pos_y1 = 0;
	ancho = (NS4) ? window.innerWidth : document.body.clientWidth;		
	alto = (NS4) ? window.innerHeight : document.body.clientHeight;
	posx= (NS4) ? ancho-ancho_icono-20:ancho-ancho_icono; 
	posy=alto-alto_icono;
	posx = posx / 2;
	posy = posy / 2;
	
	var i,p,v,obj,args=MM_showHideLayers.arguments;
	for (i=0; i<(args.length-2); i+=3)
		if ((obj=MM_findObj(args[i]))!=null)
		{
			v=args[i+2];
			if (obj.style)
			{
				obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v;
			}
			obj.visibility=v;
			
			if (args[0] == "l")
			{
				if (Version4){
					desplazamiento = (NS4) ? window.pageYOffset : document.body.scrollTop;
					pos_y1 = posy + desplazamiento;
					obj.left=posx;
					obj.top=pos_y1;
				}
			}
		}
}

// SCRIPT : FORMATO NUMERICO

function dp(price) 
	{
		string = '' + price;
		number = string.length - string.indexOf('.');
		if (string.indexOf('.') == -1)
			return string + '.00';
		if (number == 1)
			return string + '00';
		if (number == 2)
			return string + '0';
		if (number > 3)
			return string.substring(0,string.length-number+3);
		return string;
	}
												
	function aplica_formato(cad_in)
	{
		var cadena_paso = '';
		var decimales = '';
		var enteros = '';
		var valida = 1;
		cadena_paso = cad_in;
		for (var y = 0; y < cadena_paso.length; y++)
		{
			var letra = cadena_paso.charAt(y);
			if (letra == '.')
			{
				decimales = cadena_paso.substring(y,cadena_paso.length);
				enteros = cadena_paso.substring(0,y);
				y = cadena_paso.length;
				valida = 0;
			}
		}
		if (valida == 1)
		{
			enteros = cadena_paso;
		}
		var cad_paso = enteros.toString().split('');
		var cad_out  = '';
		var cont = 0;
		for(var i=cad_paso.length-1;i>=0;i--)
		{
			cont++;
			cad_out=cad_paso[i]+cad_out;
			if(cont%3==0&&i!=0-1)
			{
				cad_out=','+cad_out;
			}
		}
		if (cad_out.charAt(0) == ',')
		{
			cad_out = cad_out.substring(1,cad_out.length);
		}
		cad_out = cad_out + decimales;
		return(cad_out);
	}

//	SCRIPT -- GENERA POPUP

function genera_popup(mypage, myname, w, h, scroll)
{
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable'
	win = window.open(mypage, myname, winprops)
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }			
}

function ventana_proveedores(agencia)
{
    var id_agencia = agencia;
	var mypage = "Solicitud.proveedores?id_agencia=" + id_agencia;
	var myname = "proveedor";
	var w = 800;
	var h = 600;
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=yes,resizable'
	win = window.open(mypage, myname, winprops)
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }			
}

function ventana_compras(usuario,nivel)
{
	var id_usuario = usuario;
	var id_nivel = nivel;
	var mypage = "Compras.index_menu_compras?id_usuario="+id_usuario+"&nivel_acceso="+id_nivel;
	var myname = "compras";
	var w = (screen.width-10);
	var h = (screen.height-50);
	var winl = 0;
	var wint = 0;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=yes,resizable'
	win = window.open(mypage, myname, winprops)
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }			
	
}

function botonera()
{
	mostrar(0,true);
}

function mostrar(seccion,activacion)
{
	var objeto;
	if (typeof(activacion)=='object') objeto = activacion;
	if (activacion==true)
	{
		activacion="";
		no_activacion="none"; 
	}
	else if (activacion==false)
	{
		activacion="none";
		no_activacion="";
	}
	switch(seccion){
		case 0:{
			window.botonera_final.style.display = no_activacion;	
			break;
		}
		case 1:{
			window.botonera_inicial.style.display = no_activacion;
			window.botonera_final.style.display = activacion;
			break;
		}
		case 2:{
			window.sel_fecha_inicial.style.display = no_activacion;
			break;
		}
		case 3:{
			window.sel_fecha_inicial.style.display = activacion;
			break;
		}
	}
}

function unidad(numuero){  //UNIDADES
 var numu;
 switch (numuero)
 {
  case 9:
  {
   numu = "NUEVE";
   break;
  }
  case 8:
  {
   numu = "OCHO";
   break;
  }
  case 7:
  {
   numu = "SIETE";
   break;
  }  
  case 6:
  {
   numu = "SEIS";
   break;
  }  
  case 5:
  {
   numu = "CINCO";
   break;
  }  
  case 4:
  {
   numu = "CUATRO";
   break;
  }  
  case 3:
  {
   numu = "TRES";
   break;
  }  
  case 2:
  {
   numu = "DOS";
   break;
  }  
  case 1:
  {
   numu = "UN";
   break;
  }  
  case 0:
  {
   numu = "";
   break;
  }  
 }
 return numu; 
}

function decena(numdero){              //DECENAS
  var numd;
  if (numdero >= 90 && numdero <= 99)
  {
   numd = "NOVENTA ";
   if (numdero > 90)
    numd = numd + "Y " + (unidad(numdero - 90));
  }
  else if (numdero >= 80 && numdero <= 89)
  {
   numd = "OCHENTA ";
   if (numdero > 80)
    numd = numd + "Y " + (unidad(numdero - 80));
  }
  else if (numdero >= 70 && numdero <= 79)
  {
   numd = "SETENTA ";
   if (numdero > 70)
    numd = numd + "Y " + (unidad(numdero - 70));
  }
  else if (numdero >= 60 && numdero <= 69)
  {
   numd = "SESENTA ";
   if (numdero > 60)
    numd = numd + "Y " + (unidad(numdero - 60));
  }
  else if (numdero >= 50 && numdero <= 59)
  {
   numd = "CINCUENTA ";
   if (numdero > 50)
    numd = numd + "Y " + (unidad(numdero - 50));
  }
  else if (numdero >= 40 && numdero <= 49)
  {
   numd = "CUARENTA ";
   if (numdero > 40)
    numd = numd + "Y " + (unidad(numdero - 40));
  }
  else if (numdero >= 30 && numdero <= 39)
  {
   numd = "TREINTA ";
   if (numdero > 30)
    numd = numd + "Y " + (unidad(numdero - 30));
  }
  else if (numdero >= 20 && numdero <= 29)
  {
   if (numdero == 20)
    numd = "VEINTE ";
   else
    numd = "VEINTI" + (unidad(numdero - 20));
  }
  else if (numdero >= 10 && numdero <= 19)
  {
   switch (numdero){
   case 10:
   {
    numd = "DIEZ ";
    break;
   }
   case 11:
   {     
    numd = "ONCE ";
    break;
   }
   case 12:
   {
    numd = "DOCE ";
    break;
   }
   case 13:
   {
    numd = "TRECE ";
    break;
   }
   case 14:
   {
    numd = "CATORCE ";
    break;
   }
   case 15:
   {
    numd = "QUINCE ";
    break;
   }
   case 16:
   {
    numd = "DIECISEIS ";
    break;
   }
   case 17:
   {
    numd = "DIECISIETE ";
    break;
   }
   case 18:
   {
    numd = "DIECIOCHO ";
    break;
   }
   case 19:
   {
    numd = "DIECINUEVE ";
    break;
   }
   } 
  }
  else
   numd = unidad(numdero);
 return numd;
}

 function centena(numc){       //CENTENAS
  var numce;
  if (numc >= 100)
  {
   if (numc >= 900 && numc <= 999)
   {
    numce = "NOVECIENTOS ";
    if (numc > 900)
     numce = numce + (decena(numc - 900));
   }
   else if (numc >= 800 && numc <= 899)
   {
    numce = "OCHOCIENTOS ";
    if (numc > 800)
     numce = numce + (decena(numc - 800));
   }
   else if (numc >= 700 && numc <= 799)
   {
    numce = "SETECIENTOS ";
    if (numc > 700)
     numce = numce + (decena(numc - 700));
   }
   else if (numc >= 600 && numc <= 699)
   {
    numce = "SEISCIENTOS ";
    if (numc > 600)
     numce = numce + (decena(numc - 600));
   }
   else if (numc >= 500 && numc <= 599)
   {
    numce = "QUINIENTOS ";
    if (numc > 500)
     numce = numce + (decena(numc - 500));
   }
   else if (numc >= 400 && numc <= 499)
   {
    numce = "CUATROCIENTOS ";
    if (numc > 400)
     numce = numce + (decena(numc - 400));
   }
   else if (numc >= 300 && numc <= 399)
   {
    numce = "TRESCIENTOS ";
    if (numc > 300)
     numce = numce + (decena(numc - 300));
   }
   else if (numc >= 200 && numc <= 299)
   {
    numce = "DOSCIENTOS ";
    if (numc > 200)
     numce = numce + (decena(numc - 200));
   }
   else if (numc >= 100 && numc <= 199)
   {
    if (numc == 100)
     numce = "CIEN ";
    else
     numce = "CIENTO " + (decena(numc - 100));
   }
  }
  else
   numce = decena(numc);
  return numce; 
}

 function miles(nummero){                  //MILES
  var numm;
  if (nummero >= 1000 && nummero < 2000){
   numm = "MIL " + (centena(nummero%1000));
  }
  if (nummero >= 2000 && nummero <10000){
   numm = unidad(parseInt(nummero/1000)) + " MIL " + (centena(nummero%1000));
  }
  if (nummero < 1000)
   numm = centena(nummero);
  return numm;
 }

 function decmiles(numdmero){
   var numde;
  if (numdmero == 10000)
   numde = "DIEZ MIL";
  if (numdmero > 10000 && numdmero <20000){
   numde = decena(parseInt(numdmero/1000)) + "MIL " + (centena(numdmero%1000));  
  }
  if (numdmero >= 20000 && numdmero <100000){
   numde = decena(parseInt(numdmero/1000)) + " MIL " + (miles(numdmero%1000));  
  }  
  if (numdmero < 10000)
   numde = miles(numdmero);
  return numde;
 }  

 function cienmiles(numcmero){                  //CIENMILES
 var num_letracm;
  if (numcmero == 100000)
   num_letracm = "CIEN MIL";
  if (numcmero >= 100000 && numcmero <1000000){
   num_letracm = centena(parseInt(numcmero/1000)) + " MIL " + centena(numcmero%1000);  
  }
  if (numcmero < 100000)
   num_letracm = decmiles(numcmero);

  return num_letracm;
 } 
//APARTIR DE AQUI EMPIEZAN A CONTAR LOS MILLONES 


 function millon(nummiero){
 var num_letramm;
  if (nummiero >= 1000000 && nummiero <2000000){
   num_letramm = "UN MILLON " + (cienmiles(nummiero%1000000));
  }
  if (nummiero >= 2000000 && nummiero <10000000){
   num_letramm = unidad(parseInt(nummiero/1000000)) + " MILLONES " + (cienmiles(nummiero%1000000));
  }
  if (nummiero < 1000000)
   num_letramm = cienmiles(nummiero);

  return num_letramm;
 } 

 function decmillon(numerodm){
var  num_letradmm;
  if (numerodm == 10000000)
   num_letradmm = "DIEZ MILLONES";
  if (numerodm > 10000000 && numerodm <20000000){
   num_letradmm = decena(parseInt(numerodm/1000000)) + "MILLONES " + (cienmiles(numerodm%1000000));  
  }
  if (numerodm >= 20000000 && numerodm <100000000){
   num_letradmm = decena(parseInt(numerodm/1000000)) + " MILLONES " + (millon(numerodm%1000000));  
  }
  if (numerodm < 10000000){
     num_letradmm = millon(numerodm);}
  
  return num_letradmm;
 }

 function cienmillon(numcmeros){
  var num_letracms;
  if (numcmeros == 100000000)
   num_letracms = "CIEN MILLONES";
  if (numcmeros >= 100000000 && numcmeros <1000000000){
   num_letracms = centena(parseInt(numcmeros/1000000)) + " MILLONES " + (millon(numcmeros%1000000));  
  }
  if (numcmeros < 100000000)
   num_letracms = decmillon(numcmeros);
  return num_letracms;
 } 

 function milmillon(nummierod){
  var num_letrammd;
  if (nummierod >= 1000000000 && nummierod < 2000000000){
   num_letrammd = "MIL " + (cienmillon(nummierod%1000000000));
  }
  if (nummierod >= 2000000000 && nummierod <10000000000){
   num_letrammd = unidad(parseInt(nummierod/1000000000)) + " MIL " + (cienmillon(nummierod%1000000000));
  }
  if (nummierod < 1000000000)
   num_letrammd = cienmillon(nummierod);
  
  return num_letrammd;
 } 
   
  
function convertir_numletra(numero){
	 var entero = parseInt(numero);
	 var decimales = Math.round((numero - entero) * 100);
 
	 if (decimales == 0)
	 {
	 	decimales = "00";
	 }
	 
 	 if (decimales < 10 && decimales > 0)
	 {
	 	decimales = "0" + decimales;
	 }
	 
     var numf = milmillon(parseInt(numero));
	 var num_letra = "** " + numf + " PESOS " + decimales + "/100 M.N. ** ";
	return num_letra;
}

// SCRIPT : VALIDA FECHA
// -------------------------------------------------------
function checkdate_nuevo(objName)
{
	var datefield = objName;
	
	if (datefield.value.length < 10)
	{
		datefield.select();
		alert("Fecha inválida. Ingrese una correcta.");
		datefield.value = "";
		datefield.focus();
		return false;
	}
	if (chkdate_nuevo(objName) == false)
	{
		datefield.select();
		alert("Fecha inválida. Ingrese una correcta.");
		datefield.value = "";
		datefield.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function chkdate_nuevo(objName)
{
	//var strDatestyle = "US"; //United States date style
	var strDatestyle = "EU";  //European date style
	var strDate;
	var strDateArray;
	var strDay;
	var strMonth;
	var strYear;
	var intday;
	var intMonth;
	var intYear;
	var booFound = false;
	var datefield = objName;
	var strSeparatorArray = new Array("-"," ","/",".");
	var intElementNr;
	var err = 0;
	var strMonthArray = new Array(12);
	strMonthArray[0] = "Ene";
	strMonthArray[1] = "Feb";
	strMonthArray[2] = "Mar";
	strMonthArray[3] = "Abr";
	strMonthArray[4] = "May";
	strMonthArray[5] = "Jun";
	strMonthArray[6] = "Jul";
	strMonthArray[7] = "Ago";
	strMonthArray[8] = "Sep";
	strMonthArray[9] = "Oct";
	strMonthArray[10] = "Nov";
	strMonthArray[11] = "Dic";
	strDate = datefield.value;
	if (strDate.length < 1)
	{
		return true;
	}
	for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++)
	{
		if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1)
		{
			strDateArray = strDate.split(strSeparatorArray[intElementNr]);
			if (strDateArray.length != 3)
			{
				err = 1;
				return false;
			}
			else
			{
				strDay = strDateArray[0];
				strMonth = strDateArray[1];
				strYear = strDateArray[2];
			}
			booFound = true;
		}
	}

	if (booFound == false)
	{
		if (strDate.length>5)
		{
			strDay = strDate.substr(0, 2);
			strMonth = strDate.substr(2, 2);
			strYear = strDate.substr(4);
		}
	}
	
	if (strYear.length == 2)
	{
		strYear = '20' + strYear;
	}

	// US style
	if (strDatestyle == "US")
	{
		strTemp = strDay;
		strDay = strMonth;
		strMonth = strTemp;
	}

	intday = parseInt(strDay, 10);
	if (isNaN(intday))
	{
		err = 2;
		return false;
	}

	intMonth = parseInt(strMonth, 10);
	if (isNaN(intMonth))
	{
		for (i = 0;i<12;i++)
		{
			if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase())
			{
				intMonth = i+1;
				strMonth = strMonthArray[i];
				i = 12;
			}
		}

		if (isNaN(intMonth))
		{
			err = 3;
			return false;
		}
	}
	
	intYear = parseInt(strYear, 10);

	if (isNaN(intYear))
	{
		err = 4;
		return false;
	}

	if (intMonth>12 || intMonth<1)
	{
		err = 5;
		return false;
	}
	
	if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1))
	{
		err = 6;
		return false;
	}
	
	if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1))
	{
		err = 7;
		return false;
	}
	
	if (intMonth == 2)
	{
		if (intday < 1)
		{
			err = 8;
			return false;
		}
		if (LeapYear_nuevo(intYear) == true)
		{
			if (intday > 29)
			{
				err = 9;
				return false;
			}
		}
		else
		{
			if (intday > 28)
			{
				err = 10;
				return false;
			}
		}
	}
	return true;
}

function LeapYear_nuevo(intYear)
{
	if (intYear % 100 == 0)
	{
		if (intYear % 400 == 0)
		{
			return true;
		}
	}
	else
	{
		if ((intYear % 4) == 0)
		{
			return true;
		}
	}
	return false;
}

function doDateCheck_nuevo(from, to)
{
	if (Date.parse(from.value) <= Date.parse(to.value))
	{
		alert("Las fechas son válidas.");
	}
	else
	{
		if (from.value == "" || to.value == "") 
			alert("Ambas fechas deben ser introducidas.");
		else 
			alert("La segunda fecha debe ser posterior.");
   }
}


function Check_mail(cadena)
{
	var filter=/^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
	if (filter.test(cadena))
	{
		return true;
	}
	else
	{
		return false;
	}
}
