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_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_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 newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		subscripcion_02_subscripcion_03_over = newImage("http://revista.robotiker.com/revista_articulos/imagenes_susc/subscripcion_02-subscripcio.gif");
		subscripcion_03_over = newImage("http://revista.robotiker.com/revista_articulos/imagenes_susc/subscripcion_03-over.gif");
		subscripcion_04_subscripcion_03_over = newImage("http://revista.robotiker.com/revista_articulos/imagenes_susc/subscripcion_04-subscripcio.gif");
		preloadFlag = true;
	}
}
function AbrirVentana(url)
{
  remote = open(url, "", "scrollbars,width=610,height=495,left=100,top=40");
}


function trimString (str) {
  while (str.charAt(0) == ' ')
    str = str.substring(1);
  while (str.charAt(str.length - 1) == ' ')
    str = str.substring(0, str.length - 1);
  return str;
}

function isDigit(num) {
	var string="1234567890";
	if (string.indexOf(num) != -1) {
		return true;
		}
	return false;
	}

function isNumeric(val) {
	var dp = false;
	val=trimString(val);
	for (var i=0; i < val.length; i++) {
		if (!isDigit(val.charAt(i))) { 
			if (val.charAt(i) == '.') {
				if (dp == true) {return false;} // already saw a decimal point
				else {dp = true;}
				}
			else {
				return false; 
				}
			}
		}
	return true;
	}

function isEmail(varEmail)
{
  var email = varEmail;
  email = trimString(email.toString());
  var longitud = email.length;
 
  // obtengo la posición de la @ y la cadena anterior y posterior
  var pos_arroba = email.indexOf("@");
  if(pos_arroba < 1) return false;
  var antes_arroba = email.substring(0,pos_arroba);
  var despues_arroba = email.substring(pos_arroba+1,longitud);
  
  // despues de la @ no puede haber otra y tiene que haber un . por lo menos
  if(despues_arroba.indexOf("@") != -1) return false;
  var pos_punto = despues_arroba.indexOf(".");
  if(pos_punto < 1) return false;
  if (++pos_punto==despues_arroba.length) return false;
  return true;      
}

function isFecha(varFecha)
{
  var fecha = varFecha;
  fecha=trimString(fecha.toString());

  var fechaSplit = fecha.split("/");
  var anyo = "" + fechaSplit[0];
  var mes = "" + fechaSplit[1];
  var dia = "" + fechaSplit[2];
 
  if (dia.length!=2 ) return false;
  if (mes.length!=2 ) return false;
  if (anyo.length != 4) return false;

  if((mes==4) || (mes==6) || (mes==9) || (mes==11))
  {
    if((dia == 0) || (dia > 30))
    {
      return false;
    }
  }
  else if((mes==1) || (mes==3) || (mes==5) || (mes==7) 
          || (mes==8) || (mes==10) || (mes==12))
  {
    if((dia == 0) || (dia > 31))
    {
      return false;
    }
  }
  else if(mes ==2)
  {
    // para los bisiestos
    if( ((anyo % 4) == 0) && ( ((anyo % 100) != 0) || ((anyo % 400) == 0) ) )
    {
      if((dia == 0) || (dia > 29))
      {
         return false;
      }
    }
    // para los no bisiestos
    else
    {
      if((dia == 0) || (dia > 28))
      {
       return false;
      }
    }
  }
  else
  {
    return false;
  }
  
  return true;
}

function addbookmark(titulo){
if (document.all) window.external.AddFavorite(document.location.href,titulo);
}