/*********************************************************/
/*                                                       */
/*  Funciones JavaScript para TRADES                     */
/*                                                       */
/*********************************************************/

// listas de caracteres
var whitespace = " \t\n\r";


// Funcion que comprueba si el string pasado como parametro es vacio
function esVacio(s)
{   
  return ((s == null) || (s.length == 0))
}


// s es vacio o solo caracteres de espacio
function isWhitespace (s)
{   var i;
    if (esVacio(s)) return true;
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        // si el caracter en que estoy no aparece en whitespace,
        // entonces retornar falso
        if (whitespace.indexOf(c) == -1) return false;
    }
    return true;
}



// Funcion que comprueba si el string pasado como parametro es un digito
function esDigito(c)
{   return ((c >= "0") && (c <= "9"))
}


// Funcion que comprueba si el string pasado como parametro es un numero entero (sin signo)
function esEntero(s)
{   var i;
    if (esVacio(s)) 
       if (esEntero.arguments.length == 1)
          return false;
       else
          return (esEntero.arguments[1] == true);
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (!esDigito(c)) 
        {
           return false;
        }
    }
    return true;
}


// Funcion que comprueba si el string pasado como parametro es una fecha con formato dd/mm/yyyy
function esFecha(f) 
{
    // split  dd/mm/yy ó dd/mm/yyyy
    var arrayOfStrings = f.split("/");

    // False, no hay cadenas
    if (arrayOfStrings==null) 
    {
       return false;
    }
		
    // Número de cadenas resultantes al hacer el split
    var len = arrayOfStrings.length;
	
    // El número de cadenas tiene que ser 3
    if (len!=3) 
    {
       return false;
    }		
	
    // Comprobar que las cadenas sean numéricas
    for (var i=0; i < len; i++) 
    {
       var elemento=arrayOfStrings[i];
	 if (!esEntero(elemento)) 
	 {
  	    return false;
	 }	
    }
			
    // Pasar cadenas a entero (base 10)
    // mes
    var mes = parseInt(arrayOfStrings[1],10);
    // dia
    var dia = parseInt(arrayOfStrings[0],10);

    // año
    var year=arrayOfStrings[2];
    var yearnum=parseInt(year,10);
    var lon=year.length;

    // formato año:  yy ó yyyy  (01 ó 2001)
    //    if (lon!=2  && lon!=4 ) 
    if (lon!=4 ) 
    {
       return false;
    }	
		
    // mes 1..12	
    if  (mes<1 || mes>12) 
    {
       return false;
    }	
	
    // dia 1..31
    if  (dia<1 || dia>31) 
    {
       return false;
    }	

    switch (mes)
    {
       // meses con 30 dias: abril,junio, septiembre, noviembre,
	 case 4: case 6: case 9: case 11:
	    if (dia==31) 
	    {
	       return false;
	    }	
	    break;
	 // febrero		
	 case 2:
	    if ((dia==30) || (dia==31)) 
	    {
	       return false;
	    }	
	    break;
	 // resto de meses
	 default:
	    break;
    } // switch

	
    // formar año completo yyyy
    if (lon==2)
    {
       if (yearnum<29)
          year= "20" + year;
       else
          year= "19" + year;
       yearnum=parseInt(year,10);
    }	
	
    // bisiesto
    var nobisiesto=(yearnum%4!=0) || ((yearnum%4==0) && (yearnum%100==0 ) && (yearnum%400!=0));

    if (mes==2 && dia==29 && nobisiesto) 
    {
        return false;
    }

    return true;	
}


// Función que comprueba que la fecha de inicio sea mayor o igual que la de fin
function CompruebaRangos(fechaInicio, fechaFin)
{
   // split  dd/mm/yy ó dd/mm/yyyy
   var arrayOfStringsInicio = fechaInicio.split("/");
   var arrayOfStringsFin    = fechaFin.split("/");

   // Pasar cadenas a entero (base 10)
   // dias
   var diaInicio = parseInt(arrayOfStringsInicio[0],10);
   var diaFin    = parseInt(arrayOfStringsFin[0],10);
   // meses
   var mesInicio = parseInt(arrayOfStringsInicio[1],10);
   var mesFin = parseInt(arrayOfStringsFin[1],10);
   // años
   var anoInicio = arrayOfStringsInicio[2];
   var anoFin = arrayOfStringsFin[2];

   if (anoInicio<100)
      anoInicio = "20" + anoInicio;
   anoInicio = parseInt(anoInicio,10);

   if (anoFin<100)
      anoFin = "20" + anoFin;
   anoFin = parseInt(anoFin,10);

   // Se comprueban los rangos
   if (anoFin<anoInicio) return false;
   if (anoFin>anoInicio) return true;
   if (mesFin<mesInicio) return false;
   if (mesFin>mesInicio) return true;
   if (diaFin<diaInicio) return false;
   
   return true;
}



// s es una direccion de correo valida
function esEmail (s)
{
    if (esVacio(s)) 
       if (esEmail.arguments.length == 1) return false;
       else return (esEmail.arguments[1] == true);

    if (isWhitespace(s)) return false;
    var i = 1;
    var sLength = s.length;
    while ((i < sLength) && (s.charAt(i) != "@")) 
    { 
        i++
    }

    if ((i >= sLength) || (s.charAt(i) != "@")) return false;
    else i += 2;

    while ((i < sLength) && (s.charAt(i) != "."))
    { 
       i++
    }

    if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
    else return true;
}


/*********************************************************/
/*                                                       */
/*  Funciones JavaScript para TRADES                     */
/*                                                       */
/*  Plugin Flash                                         */
/*********************************************************/

function setFlashPrincipal()
{
/*****
	<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0" width="144" height="76">
    <param name=movie value="tradonli.swf">
    <param name=quality value=high>
    <embed src="tradonli.swf" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="144" height="76">
    </embed> 
    </object>
*****/

	document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0" width="144" height="76">');
	document.write('    <param name=movie value="tradonli.swf">');
	document.write('    <param name=quality value=high>');
	document.write('    <embed src="tradonli.swf" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="144" height="76">');
	document.write('    </embed> ');
	document.write('    </object>');
} //	

function detectarflashPrincipal()
{
  pluginFlash(1)
} // detectarFlash()


function setFlash()
{

/******
			<!-- URL's used in the movie-->
            <!-- text used in the movie-->
             <!--enviando  -->
			 <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
              codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
              WIDTH=120 HEIGHT=40>
              <PARAM NAME=movie VALUE="enviando.swf"> 
			  <PARAM NAME=menu VALUE=false> 
			  <PARAM NAME=quality VALUE=high> 
			  <PARAM NAME=bgcolor VALUE=#CC9933>
			   <EMBED src="enviando.swf" menu=false quality=high bgcolor=#CC9933  
			   WIDTH=120 HEIGHT=40 TYPE="application/x-shockwave-flash" 
			   PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
			   </EMBED>
              </OBJECT>
*******/

	document.write('<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ');
	document.write('codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"');
	document.write('WIDTH=360 HEIGHT=120>');
	document.write(' <PARAM NAME=movie VALUE="enviando.swf">'); 
	document.write('<PARAM NAME=menu VALUE=false>');
	document.write('<PARAM NAME=quality VALUE=high>');
	document.write('<PARAM NAME=bgcolor VALUE=#FFFFFF>');
	document.write('<EMBED src="enviando.swf" menu=false quality=high bgcolor=#FFFFFF');
	document.write('WIDTH=360 HEIGHT=120 TYPE="application/x-shockwave-flash"'); 
	document.write('PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED>');
	document.write('</OBJECT>');

} // setFlash()

function detectarflash()
{
  pluginFlash(2)
} // detectarFlash()

// parámetro
// 1, flash página principal
// 2, flash enviando
function pluginFlash(opcion)
{

noautoinstall = ""

if(navigator.appName == "Microsoft Internet Explorer" && 
	(navigator.appVersion.indexOf("Mac") != -1 || navigator.appVersion.indexOf("3.1") != -1))
{
noautoinstall = "true";
}
	if (navigator.appName == "Microsoft Internet Explorer" && noautoinstall != "true")
	{
	  if (opcion == 1) setFlashPrincipal();
  	  if (opcion == 2) setFlash();	  
	}

	else 
		if(navigator.plugins)
		{
			if(navigator.plugins["Shockwave Flash"])
			{
				  if (opcion == 1) setFlashPrincipal();
		  		  if (opcion == 2) setFlash();	  
			}
			else if(navigator.plugins["Shockwave Flash 2.0"])
			{
				document.write('Actualizar flash en <a href="http://www.macromedia.com/"> Macromedia </a> ');
			}
			else
			{
			    
				if (opcion == 1) document.write('<img src="/publico/img/banner_peq.gif">');
	  		    if (opcion == 2) document.write('<img src="enviando.gif">');
				
			}
		}
		else 
		{
			// document.write(' No se pudo detectar Plugin');
		}


} // pluginFlash()
