<!--
function libros_autor(jsp_autor){
  document.write('<form name="busqueda" action="/catalogo/busqueda.asp" method="POST"><input type="hidden" name="tipo" value="rapida"><input type="hidden" name="tipobusqueda" value="AUTOR"><input type="hidden" name="busqueda" value="'+jsp_autor+'"><input type="hidden" name="accion" value="newsearch"></form></form>');
  document.busqueda.submit();
}

function suma_valores(){
  var x=document.all.parcial.length;
  var y=0;
  for (var i=0;i<x;i++){
   y = eval(document.all.parcial[i].value) + y;
  }
  document.write(roundOff(y,2));
}

function roundOff(value, precision)
{
  value = "" + value
  precision = parseInt(precision);
  var whole = "" + Math.round(value * Math.pow(10, precision));
  var decPoint = whole.length - precision;
  if(decPoint != 0)
  {
          result = whole.substring(0, decPoint);
          result += ".";
          result += whole.substring(decPoint, whole.length);
  }
  else
  {
          result = whole;
  }
  return result;
}

function seleccionar_todos(StrAccion){
 if ("undefined" == typeof(document.mform.isbn.length) ){
   document.mform.isbn.checked=StrAccion;
 }
 else
 {
   for (var ind_libro=0; ind_libro < document.mform.isbn.length; ind_libro++) {
    window.status='Procesando '+eval(ind_libro+1)+'/'+document.mform.isbn.length;
    document.mform.isbn[ind_libro].checked=StrAccion;
   } 
   window.status='Listo';
 }
}

function get_check_value(StrAccion)
{
var var_seleccion=false;

 if ("undefined" == typeof(document.mform.isbn.length) ){
    if (eval(document.mform.isbn.checked))
      var_seleccion=true;
 }
 else
 {
   for (var ind_libro=0; ind_libro < document.mform.isbn.length; ind_libro++) {
    if (eval(document.mform.isbn[ind_libro].checked)){
      var_seleccion=true;
      break;
      }
   }
 }

if (!var_seleccion){
  if (StrAccion=='carrito'){
    alert('Seleccione al menos 1 libro para agregar al carrito');
  }else{
    alert('Seleccione al menos 1 libro para exportar a excel');
  }
  return;  
}

if (StrAccion=='carrito'||StrAccion=='devolucion'){
 if ("undefined" == typeof(document.mform.isbn.length) ){
    if (!eval(document.mform.isbn.checked)) {
      document.mform.titulo.disabled=true;
      document.mform.autor.disabled=true;
      document.mform.precio.disabled=true;
      document.mform.cantidad.disabled=true;
    }
 }
 else
 {
  for (var ind_libro=0; ind_libro < document.mform.isbn.length; ind_libro++)
   {
     window.status='Procesando '+eval(ind_libro+1)+'/'+document.mform.isbn.length;
     if (!eval(document.mform.isbn[ind_libro].checked)) {
      document.mform.titulo[ind_libro].disabled=true;
      document.mform.autor[ind_libro].disabled=true;
      document.mform.precio[ind_libro].disabled=true;
      document.mform.cantidad[ind_libro].disabled=true;
     }
   }
   window.status='Listo';
 }
}

if ("undefined" == typeof(document.mform.isbn.length) ){

   if (eval(document.mform.isbn.checked))
    {
      if (StrAccion=='exportar'){
       document.mform.target='_parent';
       document.mform.action='/genexcel.asp';
      }else{
        if (StrAccion=='devolucion'){
         document.all.loading.style.visibility = 'visible';
         document.mform.target='_self';
         document.mform.action='/login/pedidos/devolucion.asp';
        }else{
         document.all.loading.style.visibility = 'visible';
         document.mform.target='_self';
         document.mform.action='/login/pedidos/index.asp';
        }
      }
      document.mform.submit();
      return;
    }
}
else
{
 for (var ind_libro=0; ind_libro < document.mform.isbn.length; ind_libro++)
  {
   if (eval(document.mform.isbn[ind_libro].checked))
    {
      if (StrAccion=='exportar'){
       document.mform.target='_parent';
       document.mform.action='/genexcel.asp';
      }else{
        if (StrAccion=='devolucion'){
         document.all.loading.style.visibility = 'visible';
         document.mform.target='_self';
         document.mform.action='/login/pedidos/devolucion.asp';
        }else{
         document.all.loading.style.visibility = 'visible';
         document.mform.target='_self';
         document.mform.action='/login/pedidos/index.asp';
        }
      }
      document.mform.submit();
      return;
    }
  }
}
}

function check_carrito_dec (jsp_form){
  if (check_isbn(jsp_form)&&!chk_cadena_vacia(jsp_form.fecha_desde.value)&&!chk_cadena_vacia(jsp_form.fecha_hasta.value)&&chk_fecha(jsp_form.fecha_desde)&&chk_fecha(jsp_form.fecha_hasta)){
    document.all.loading.style.visibility = 'visible';
    return true;
  } else {
    return false;
  }
}

function check_isbn(jsp_form){
 var isbno = jsp_form.isbn.value.replace(/ /g,'');
 var isbnolen = isbno.length;
 if (chk_cadena_vacia(isbno)){
  alert('Ingrese el ISBN');
  jsp_form.isbn.select();
  jsp_form.isbn.focus();
  return false;
 } else {
    if (isbnolen < 9) {
      alert('El numero de ISBN es demasiado corto');
      jsp_form.isbn.select();
      jsp_form.isbn.focus();
      return false;
    }
    else if (isbnolen > 18) {
      alert('El numero de ISBN es demasiado largo');
      jsp_form.isbn.select();
      jsp_form.isbn.focus();
      return false;
    } else {return true;}
 }
}

function ckeck_busqueda(){
 if (document.busqueda.busqueda.value=='[ Ingrese aqui su Busqueda ]'){
  alert('Ingrese su busqueda');
  document.busqueda.busqueda.select();
  document.busqueda.busqueda.focus();
  return false;
 }
}

function ckeck_carrito(){
  if ("undefined" == typeof(document.modificacantidad.cantidad) ){
    alert('Su carrito de compras se encuentra vacio');
    return false;
  }
  if ("undefined" == typeof(document.modificacantidad.cantidad.length) ){
     if (document.modificacantidad.cantidad.style.color=='red') {
      alert('Su carrito de compras no se encuentra actualizado. Grabe los cambios para continuar');
      return false;
     }
  }
  for (var ind_carrito=0; ind_carrito < document.modificacantidad.cantidad.length; ind_carrito++)
    {
     if (document.modificacantidad.cantidad[ind_carrito].style.color=='red') {
      alert('Su carrito de compras no se encuentra actualizado. Grabe los cambios para continuar');
      return false;
     }
  }
}

function ckeck_busquedaavanzada(){
 var enviar='';
 var largo=0;
 largo=largo+document.busquedaavanzada.isbn.value.length;
 if (document.busquedaavanzada.isbn.value.length>18){
  enviar      += '\n     -  El ISBN es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.titulo.value.length;
 if (document.busquedaavanzada.titulo.value.length>40){
  enviar      += '\n     -  El titulo es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.autor.value.length;
 if (document.busquedaavanzada.autor.value.length>20){
  enviar      += '\n     -  El autor es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.coleccion.value.length;
 if (document.busquedaavanzada.coleccion.value.length>40){
  enviar      += '\n     -  La coleccion es demasiado larga';
 }
 largo=largo+document.busquedaavanzada.sector.value.length;
 if (document.busquedaavanzada.coleccion.value.length>40){
  enviar      += '\n     -  El sector es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.selloeditorial.value.length;
 if (document.busquedaavanzada.selloeditorial.value.length>3){
  enviar      += '\n     -  El sello editorial es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.genero.value.length;
 if (document.busquedaavanzada.genero.value.length>48){
  enviar      += '\n     -  El genero es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.cantpaginas.value.length;
 if (document.busquedaavanzada.cantpaginas.value.length>4){
  enviar      += '\n     -  La cantidad de paginas es demasiado larga';
 }
 largo=largo+document.busquedaavanzada.tema.value.length;
 if (document.busquedaavanzada.tema.value.length>20){
  enviar      += '\n     -  El tema es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.edicion.value.length;
 if (document.busquedaavanzada.edicion.value.length>20){
  enviar      += '\n     -  El formato es demasiado largo';
 }
 largo=largo+document.busquedaavanzada.codigobarras.value.length;
 if (document.busquedaavanzada.codigobarras.value.length>15){
  enviar      += '\n     -  El Codigo de barras es demasiado larga';
 }
 largo=largo+document.busquedaavanzada.precio_desde.value.length;
 if (isNaN(document.busquedaavanzada.precio_desde.value)) {
  enviar      += '\n     -  El precio desde tiene que ser numerico';
 }
 largo=largo+document.busquedaavanzada.precio_hasta.value.length;
 if (isNaN(document.busquedaavanzada.precio_hasta.value)) {
  enviar      += '\n     -  El precio hasta tiene que ser numerico';
 }
 if (enviar != "") {
  enviar ="_______________________________________\n" +
  "Los siguientes campos son invalidos o requeridos:\n" +
  enviar + "\n_______________________________________" +
  "\nPor Favor completelos y pruebe de nuevo";
  alert(enviar);
 }
 else {
  if (largo==0){
    alert('Ingrese algun parametro de busqueda');
    return false;
  }else{
    document.all.loading.style.visibility = 'visible';
    document.busquedaavanzada.submit();}
  }
}

function CheckLogin(jsp_form) {
if (document.getElementById || document.all || document.layers)
{
  if (chk_cadena_vacia(jsp_form.customer.value)){
    if (jsp_form.tipo[0].checked){
      alert('Ingrese el numero de cliente');
    }else{
      alert('Ingrese el numero de vendedor');
    }
    jsp_form.customer.focus();
    return (false);
  }else{
    //if (chk_numero(jsp_form.customer, 'E','0','N','Y')){
      document.all.loading.style.visibility = 'visible';
      return (true);
    //}else{
    //  return (false);
    //}
  }
}
}

function CheckEnviarAmigo(jsp_form) {
  if (chk_cadena_vacia(jsp_form.nombre.value)||chk_cadena_vacia(jsp_form.mail.value)||chk_cadena_vacia(jsp_form.remitente.value)){
    alert('Por favor complete todos los campos');
    return false;
  }
  return chk_mail(jsp_form.mail);
}

function CheckCambioPassword(jsp_form) {
if (document.getElementById || document.all || document.layers)
{
  if (chk_cadena_vacia(jsp_form.password.value)){
    alert('Ingrese el password actual');
    jsp_form.password.focus();
    return (false);
  }else{
    if (!isAlphanumerics(jsp_form.password.value)){
     alert('Ingrese valores alfanumericos');
     jsp_form.password.focus();
     return (false);
    }
    if (chk_cadena_vacia(jsp_form.newpassword.value)){
      alert('Ingrese el nuevo password');
      jsp_form.newpassword.focus();
      return (false);
    }else{
      if (!isAlphanumerics(jsp_form.newpassword.value)){
       alert('Ingrese valores alfanumericos');
       jsp_form.newpassword.focus();
       return (false);
      }
      if (chk_cadena_vacia(jsp_form.renewpassword.value)){
        alert('Re-ingrese el nuevo password');
        jsp_form.renewpassword.focus();
        return (false);
      }else{
       if (!isAlphanumerics(jsp_form.renewpassword.value)){
        alert('Ingrese valores alfanumericos');
        jsp_form.renewpassword.focus();
        return (false);
       }
       if (jsp_form.newpassword.value!=jsp_form.renewpassword.value){
        alert('Las passwords no coinciden');
        jsp_form.newpassword.focus();
        return (false);
        }else{
          if (jsp_form.newpassword.value.length<8){
           alert('El password es muy corto. Minimo 8 caracteres.');
           jsp_form.newpassword.focus();
           return (false);
          }else{
           document.all.loading.style.visibility = 'visible';
           return (true);
          }
        }
      }
    }
  }
}
}

function isAlphanumerics(aValue){
 var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
 var checkStr = aValue;
 var allValid = true;

 for (i = 0;  i < checkStr.length;  i++)
 {
  ch = checkStr.charAt(i);
  for (j = 0;  j < checkOK.length;  j++)
    if (ch == checkOK.charAt(j))
     break;
     if (j == checkOK.length)
     {
      allValid = false;
      break;
     }
 }
 return allValid;
}


function chk_mail(aValue)
{
	var x = aValue.value;
	if (chk_cadena_vacia(x)) return;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(x)) {
	 alert('La direccion de E-Mail es incorrecta');
	 eval(aValue).value='';
   return false;
	}
}

function chk_cadena_vacia(jsp_string)
{
// Esta funcion chequea si la cadena recibida es nula.

var nulls=0;

	// Si el largo es 0 => Vacia
	if (jsp_string.length==0) return true;

	// Chequea que no sea una cadena llena de espacios en blanco.
	for (j=0;j<jsp_string.length;j++) 	
	{				
		if (jsp_string.substr(j,1)==' ')
		{
			nulls++;
		}
		else 
		{
			return false;
		}
	}

	if (nulls==jsp_string.length) return true;
} 

function chk_numero(jsp_ctl,jsp_tipo,jsp_decimal,jsp_cambiarcolor,jsp_vacio)
{
if (document.getElementById || document.all || document.layers)
{
  // Esta funcion valida que el valor ingresado sea numerico.
	// Asigno el valor a una variable
  if (jsp_cambiarcolor=='Y'){
  jsp_ctl.style.color='red';
  }
	valortmp=jsp_ctl.value
  if (jsp_vacio=='N'){
   if (valortmp.length==0){
      alert('No puede quedar vacio');
			jsp_ctl.select();
			jsp_ctl.focus();
			return false;
   }
  }

	for (i=0;i<valortmp.length;i++)
	{
		// Verifico que el valortmp sea entero
		resultado=parseInt(valortmp.substr(i,1));
		
		// Si no es numérico (excepto el punto decimal) es un error
		if ( (isNaN(resultado)) && (valortmp.substr(i,1)!='.') )
		{
			//'Sólo se deben ingresar números'
      alert('Sólo se deben ingresar números');
			jsp_ctl.select();
			jsp_ctl.focus();
			return false;
		}
		
	}

	// Si el número debe ser entero no permito el punto decimal

	if (jsp_tipo=="E") // Entero
	{
		if (valortmp.indexOf('.')!=-1)
		{
			//'No se permite el ingreso de números decimales'
      alert('No se permite el ingreso de números decimales');
			jsp_ctl.select();
			jsp_ctl.focus();
			return false;
		}
	}

	// Si el número puede ser decimal busco si existe el punto decimal
	if (jsp_tipo=="D") // Decimal
	{
		inicio=valortmp.indexOf('.')+1

		// Si existe verifico que no haya más de uno
		// y que no tenga más lugares decimales que los especificados
		if (inicio != 0)
		{
			if (valortmp.indexOf('.',inicio) != -1)
			{
				//'Hay más de un punto decimal'
        alert('El valor ingresado no es valido');
				jsp_ctl.select();
				jsp_ctl.focus();
				return false;
			}

			if (valortmp.length-inicio > jsp_decimal)
			{
				//'El número excede los lugares decimales permitidos (#Decimales)'
        alert('El valor ingresado no es valido');
				jsp_ctl.select();
				jsp_ctl.focus();
				return false;
			}
		}
		else
		{
			if (valortmp.length>20)
			{
				//'El número excede el largo permitido'
        alert('El valor ingresado no es valido');
				jsp_ctl.select();
				jsp_ctl.focus();
				return false;
			}
		}
	}

	if (jsp_ctl.value.substr(0,1)=='.')
	{
		jsp_ctl.value='0'+jsp_ctl.value;
	}
	return true;
}
}

nereidFadeObjects = new Object();
nereidFadeTimers = new Object();
function nereidFade(object, destOp, rate, delta){
if (!document.all)
return
    if (object != "[object]"){  //do this so I can take a string too
        setTimeout("nereidFade("+object+","+destOp+","+rate+","+delta+")",0);
        return;
    }
    clearTimeout(nereidFadeTimers[object.sourceIndex]);
    
    diff = destOp-object.filters.alpha.opacity;
    direction = 1;
    if (object.filters.alpha.opacity > destOp){
        direction = -1;
    }
    delta=Math.min(direction*diff,delta);
    object.filters.alpha.opacity+=direction*delta;

    if (object.filters.alpha.opacity != destOp){
        nereidFadeObjects[object.sourceIndex]=object;
        nereidFadeTimers[object.sourceIndex]=setTimeout("nereidFade(nereidFadeObjects["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
    }
}

function change(indice) {
for (var k=0; k<document.forms.cliente.customer.length; k++) {
  eval('document.all.row'+k+'.style.backgroundColor = "#ffffff"');
}
  eval('document.all.row'+indice+'.style.backgroundColor = "#b0c4de"');
}

function Centrar_Ventana_Browse(jsp_URL,jsp_width,jsp_height,jsp_scroll)
{
var h=jsp_height;
var w=jsp_width;
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',resizable=no,toolbar=no,status=no,titlebar=no';

	if (jsp_scroll==1)
	{
		winprops = winprops + ',scrollbars=no';
	}
    else
    {
        winprops = winprops + ',scrollbars=yes';
    }
	win = window.open(jsp_URL,'W_LOVV', winprops)

	if (parseInt(navigator.appVersion) >= 4) 
	{ 
		win.window.focus(); 
	}
}
//-->

function chk_recordar(){
  if (chk_cadena_vacia(document.recordar.customer.value)){
    if (document.recordar.tipo[0].checked){
      alert('Ingrese el numero de cliente');
    }else{
      alert('Ingrese el numero de vendedor');
    }
   document.recordar.customer.focus();
   return false;
  }
  if (chk_cadena_vacia(document.recordar.email.value)){
   alert('Por favor ingrese su direccion de E-Mail');
   document.recordar.email.focus();
   return false;
  }
  if (chk_cadena_vacia(document.recordar.cod_seguridad.value)){
   alert('Por favor ingrese el numero de seguridad');
   document.recordar.cod_seguridad.focus();
   return false;
  }
  return true;
}


