//Funcion para redireccionar a la URL recibida
function MM_jumpMenu(url){window.document.location.href=url;}
//Funcion para abrir una nueva ventana
function MM_openBrWindow(theURL,winName,features) {window.open(theURL,winName,features);}
//Funcion para cerrar una ventana en determinado tiempo
function closeWin(time){
t = null;
t = setTimeout("self.close()",time);
}
//Funcion que se utiliza para agregar efecto de parpadeo (blink) a mensajes de error
function blinkIt() {
if (!document.all){ return;}
else {
for(i=0;i<document.all.tags('blink').length;i++){
s=document.all.tags('blink')[i];
s.style.visibility=(s.style.visibility=='visible')?'hidden':'visible';
}
}
}
function popWindow(theURL) {
newWindow = window.open(theURL,'newWindow','toolbar=no,menubar=no,resizable=no,scrollbars=no,status=no,location=no');
}
function printWindow(){
bV = parseInt(navigator.appVersion)
if (bV >= 4){ window.print();}
}
function OpnWin(mypage,myname,w,h,features) {
if(screen.width){
var winl = (screen.width-w)/2;
var wint = (screen.height-h)/2;
}else{winl = 0;wint =0;}
if (winl < 0){ winl = 0;}
if (wint < 0){ wint = 0;}
var settings = 'height=' + h + ',';
settings += 'width=' + w + ',';
settings += 'top=' + wint + ',';
settings += 'left=' + winl + ',';
settings += features;
win = window.open(mypage,myname,settings);
win.window.focus();
}
/*** Buscador ***/
function valida(texto){
	var i = 0;
	while (texto.charAt(i) == " "){
		i++;
	}
	texto = texto.substr(i);
	window.document.frmbusca.words.value = texto;
	if (texto != ""){
		return true;
	}else{
		alert("Escribe una o más palabras para buscar");
		return false;
	}
}
function shwOptions(){
	var wordcount = window.document.frmbusca.words.value;
	wordcount = wordcount.split(" ");
	if (wordcount.length != 1){
		window.document.getElementById('options').style.display = 'inline';
	}else{
		window.document.getElementById('options').style.display = 'none';
	}
}
function departamentos(){
document.write('<select name=depto class="selectbusca" title="Seleccione una opci&oacute;n para buscar por departamento"><option value="">Todos Deptos.</option>');
document.write('<option value="11">Alfombras</option>');
document.write('<option value='+'15'+'>Aparatos de Clima</option>');
document.write('<option value='+'19'+'>Arts del Hogar</option>');
document.write('<option value='+'18'+'>Arts Deportivos</option>');
document.write('<option value="30">Beb&eacute;s</option>');
document.write('<option value='+'16'+'>Blancos</option>');
document.write('<option value='+'24'+'>Caballeros</option>');
document.write('<option value='+'17'+'>Colchones</option>');
document.write('<option value="7">C&oacute;mputo/M. de Oficina</option>');
document.write('<option value='+'25'+'>Damas</option>');
document.write('<option value='+'27'+'>Damas Accesorios</option>');
document.write('<option value='+'22'+'>Discos</option>');
document.write('<option value="1">Electr&oacute;nica</option>');
document.write('<option value='+'23'+'>Enseres Menores</option>');
document.write('<option value='+'20'+'>Equipaje</option>');
document.write('<option value="10">Iluminaci&oacute;n</option>');
document.write('<option value="6">Joyer&iacute;a</option>');
document.write('<option value='+'12'+'>Juguetes</option>');
document.write('<option value='+'38'+'>Libros</option>');
document.write('<option value="2">L&iacute;nea Blanca</option>');
document.write('<option value="21">Muebles Jard&iacute;n</option>');
document.write('<option value='+'5'+'>Muebles Hogar</option>');
document.write('<option value='+'3'+'>Muebles Infantiles</option>');
document.write('<option value="13">Perfumer&iacute;a</option>');
document.write('<option value='+'4'+'>Regalos</option>');
document.write('<option value="48">Telefon&iacute;a Celular</option>');
document.write('<option value="55">Video Juegos</option>');
document.write('<option value="46">Vinos</option>');
document.write('</select>');
}
/*** Menu Lo Nuevo ***/
//Funciones para dar bateria al menu de lo nuevo horizontal deslizable
//se declara la funcion ieover, que se estara ejecutando para monitorear el menu de lo nuevo
ieover=function(){
	//se crea la variable menu para hacer referencia al html correspondiente al menu de lo nuevo
var menu = document.getElementById("nav").getElementsByTagName("LI");
//se hace un ciclo for para agregar a todos los elementos del menu la clase "over" cuando pase el mouse por encima (solo sirve para IE6)
for (var i=0; i<menu.length; i++) {
	menu[i].onmouseover=function(){
		this.className+=" over";
};
//Esta funcion quita la clase "over" a los elementos cuando se ejecuta "onmouseout" (solo sirve para IE6)
menu[i].onmouseout=function() {this.className=this.className.replace(new RegExp(" over\\b"), "");};
}
}

//la funcion slide da el efecto de movimiento horizontal al menu de lo nuevo
slide=function(){
var browser_type=navigator.appName;
var browser_version=parseInt(navigator.appVersion);
//se declara la variable div que hace referencia al html del menu de lo nuevo y la variable ul que hace referencia a las categorias del menu
var div = $('div.sc_menu'),ul = $('ul#nav'),ulPadding = 300;
var divWidth = div.width();
var lastLi = ul.children(':last');
//esta funcion mantiene rastro del mouse y desliza el menu de lo nuevo a una posicion del menu relativa a la posicion del mouse en el menu

//NO HACER CAMBIOS
ul.mousemove(function(e){
		var ulWidth = (lastLi[0].offsetLeft) + lastLi.outerWidth() + ulPadding;
		var left = ((e.pageX) - (div.offset().left)	-60) * (ulWidth-divWidth) / divWidth;
		div.scrollLeft(left);
	}
);
var nav = document.getElementById("nav");
var sc_menu=document.getElementById("sc_menu");
//El siguiente codigo soluciona un bug que se presentaba para deslizar el menu en IE6 y IE7
if (browser_type=="Microsoft Internet Explorer" && browser_version <=7){
	//si es IE6, usar la funcion onmousemove
nav.onmousemove=function(){sc_menu.className="sc_show";};
}else{
	//si es IE7 o superior, utilizar onmouseover
nav.onmouseover=function(){sc_menu.className="sc_show";};
}
//la funcion onmouseout funciona para cualquier version de IE
nav.onmouseout=function(){sc_menu.className="sc_menu";};
};
/*** Fin menu lo nuevo ***/
/*** Bolsa ***/
//funcion para desplegar bolsa dinamica con ajax
function getBolsa(){
	//se asigna la variable url con la liga al programa a ejecutar
	var url = '/CGI-BIN/WEP0309.PGM';
	//se asigna la variable X para distinguir si se trata de Internet Explorer (ActiveXObject) u otro navegador (XMLHttpRequest)
	var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
	//se asigna la variable div para referir al html correspondiente a la bolsa de compras
	var div = document.getElementById("dspbolsa");
	//se hace la llamada ajax con javascript tradicional
	if (x){
		x.onreadystatechange = function(){
			if (x.readyState == 4){ 
			//se define que al terminar la llamada ajax, el html interno de la bolsa de compras cambiara por el html resultante de la llamada al programa especificado en URL
				div.innerHTML = x.responseText;
			}else{
				//mientras no se complete la llamada, el html interno de la bolsa de compras sera el siguiente: (esta estructura sigue el codigo del programa de Octavio, con la diferencia que este codigo esta vacio y el de octavio incluye el listado de articulos en la bolsa
			div.innerHTML = '<div id="bolsahead">Mi Bolsa de Compras<a href="javascript:void(0)" id="cierrabolsa">Cerrar</a></div><div id="bolsabody"><center><img src="/tienda/imagenes/loader.gif" alt="loading"></center></div><!--div bolsabody --><div id="bolsafoot"></div><!--Div Bolsaf --></div> <!--div de dspbolsa -->'
			}
		};
		x.open("POST", url, true); //se manda asincrono con TRUE
		x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		x.setRequestHeader("Connection", "close");
		x.send(null);
	}
}
//funcion para vaciar la bolsa de compras (PARA PROYECTO DE BOTONES DE BOLSA DE COMPRAS)
function delBolsa(){
	//se hace la llamada ajax con jquery
	$.ajax({
			//se asigna la URL a llamar
      url: "/CGI-BIN/WEP0304.PGM",
      type: "POST",
      async:true,
      success: function(){
				//se actualiza la bolsa de compras al terminar la llamada ajax
    		getBolsap();
      }
   });
}
//funcion para eliminar articulo de la bolsa de compras mediante ajax (PARA PROYECTO DE BOTONES DE BOLSA DE COMPRAS)
function delItem(cookie,sku){
	//se hace la llamada ajax por jquery
	$.ajax({
			//se asigna la URL a llamar 
      url: "/CGI-BIN/WEP0302.PGM",
      type: "POST",
			//Se necesita especificar el dato COOKIE-DBS y NUMSKU-SKU
			data: ("COOKIE-DBS=" + cookie + "&NUMSKU-DBS=" + sku),
      async:true,
      success: function(){
				//al terminar se llama la funcion getbolsap que despliega la bolsa de compras actualizada
    		getBolsap();
      }
   });
}

$(document).ready(function(){

   //codigo para agregar la palabra "todos" al buscador si se cambia de dpto.
   $(".selectbusca").change(function() {
	var textbus = $("#words");
	//se valida que el valor del campo de busqueda sea vacio y si se cambia de dpto
	if ($(".selectbusca").val() != ""){
		if (textbus.val() == ""){
			//si el campo de busqueda esta vacio, se le asigna el valor "todos" al cambiar de dpto.
			textbus.val("todos");
			//se activa el campo
			textbus.focus();
			//se selecciona el texto del campo para poder escribir sobre el
			textbus.select();
		}else{
			//si el campo no estaba vacio, solo se pone el cursor en el campo conservando la cadena de busqueda original
			textbus.focus();
		}
	}else{
		//si el departamento seleccionado es "todos los dptos", vaciar el campo de busqueda
		textbus.val("");
		textbus.focus();
	}
	});
	 //Cambia de vista de cuadricula a vista de listado en listados de productos ya sea en buscador o lo nuevo
	$("a.vistas").toggle(function(){
	  $(this).addClass("swap"); 
	  $("div.articulos div").fadeOut("fast", function() {
	  	$(this).fadeIn("fast").addClass("lista"); 
		 });
	  }, function () {
      $(this).removeClass("swap");
	  $("div.articulos div").fadeOut("fast", function() {
	  	$(this).fadeIn("fast").removeClass("lista");
		});
	});
	//cambia la vista pero para listados de mesa de regalos
	$("a.rvistas").toggle(function(){
	  $(this).addClass("swap"); 
	  $("div.regalos div").fadeOut("fast", function(){
	    $(this).fadeIn("fast").addClass("grid");
	  });
	}, function (){
      $(this).removeClass("swap");
	  $("div.regalos div").fadeOut("fast", function(){
	  	$(this).fadeIn("fast").removeClass("grid");
	  });
	});
	//cambia la vista pero para listados de pagina de promociones exclusivas
	$("a.evistas").toggle(function(){
	  $(this).addClass("swap"); 
	  $("div.exclusivas div").fadeOut("fast", function(){
	    $(this).fadeIn("fast").addClass("grid");
	  });
	}, function (){
      $(this).removeClass("swap");
	  $("div.exclusivas div").fadeOut("fast", function(){
	  	$(this).fadeIn("fast").removeClass("grid");
	  });
	});
	//se agrega un hover especial para bolsa de compras, se necesita posicionar el cursos 500ms en un elemento para ser considerado "hover"
$.event.special.hover.delay = 500;
//se aplica la funcion de hover al elemento con clase bolsa para la bolsa de compras
$(".bolsa").hover(function(){
//se hace una llamada a la funcion getbolsa() que ejecuta una llamada AJAX a la bolsa de compras
	getBolsa();
	//se agrega efecto de slide down a la bolsa de compras
	$("#dspbolsa").slideDown('slow');
});


/* Funciones para cerrar la bolsa de compras al dar click fuera de ella.*/

//Si se da click dentro de la bolsa de compras, no hacer nada (return false).
$(".bolsa").mouseup(function(){return false;});
//Si se da click dentro de la bolsa de compras 
$("#dspbolsa").mouseup(function(e){
	if(e.target.id=="cierrabolsa"){
		$("#dspbolsa").fadeOut(500);
		return false;
	}else{
		return false;
	}
});

/* Con este código se monitorean los "clicks" para que cuando se presente un click fuera de la bolsa de compras, esta se cierre si se encontraba abierta.*/
$(document).mouseup(function(e){
// Si el click se presenta 
	if(e.target.nodeName=="HTML"){
		return false;
	}else if($(e.target).parent(".bolsa").length==0){
		$("#dspbolsa").fadeOut(500);
		return false;
	}
});

/* Se especifica que al dar enviar al formulario addfrm, se mande llamar la funcion addBolsa para agregar un artículo por AJAX 
Se valida que el valor de SKU no sea vacio */
$("#addfrm").submit(function() {
		if ($(".addsku").val() != "") {
			addBolsa($(".addsku").val());
			return false;
		}else{
			$(".alert").css('display','block');
		return false;
		}
	});
}); //</document.ready>
