//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		alert("Your Browser Sucks!\nIt's about time to upgrade don't you think?");
	}
}

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();

var timer = "";
var contador = 0;
var resetear = false;
var idioma_sel = "";
var step_count = 1;
var tiempo_esp = 1;//Tiempo de espera para lanzar el suggest
var campo_busqueda = "";
function waitToSuggest(idioma, campo){
	contador = 0;
	idioma_sel = idioma;
	campo_busqueda = campo;
	if(timer != "")
		clearInterval(timer);
	timer = setInterval("contar()", step_count);
}

function contar(){
	if(contador >= tiempo_esp){
		clearInterval(timer);
		searchSuggest(idioma_sel);
	}else
		contador += step_count;
}

//Called from keyup on the search textbox.
//Starts the AJAX request.
function searchSuggest(idioma) {
	var idioma;
	
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
		//var str = escape(document.getElementById('txtSearch').value);
		var str = escape(campo_busqueda.value);
		searchReq.open("GET", '/searchSuggest.php?search=' + str + '&idioma=' +idioma, true);
		searchReq.onreadystatechange = handleSearchSuggest; 
		searchReq.send(null);
	}		
}

//Called when the AJAX response is returned.
function handleSearchSuggest() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('search_suggest');
		
		clearSuggest();
		
		var str = searchReq.responseText.split("\n");
		if (str.length > 0)
		{
			var result = "<ul>";
			var cant = 0;
			for(i=0; i < str.length - 1; i++) {
				//Build our element string.  This is cleaner using the DOM, but
				//IE doesn't support dynamically added attributes.
				var texte_final;
				var ref = str[i].split('\t');
				str[i] = ref[0];
				var id_prod = ref[1];
				var precio = ref[2];
				texte_final = unescape(str[i]);
				texte_final = texte_final.replace(/\+/gi," ");
				if(texte_final != ""){
					var suggest = "<li><a href=\"javascript:;setSearch('" + removeB(texte_final) + "');\">";
					suggest += "<img align='left' src='http://www.scubastore.com/images/productos/thumbs/" + id_prod + ".jpg' /><br>";
					suggest += texte_final;
					suggest += "&nbsp;&nbsp;-&nbsp;<strong style='color:red;'>" + precio + "€</strong>";
					suggest += '</a></li>';
					result += suggest;
					cant++;
				}
			}
			
			if(cant > 0){
				result += "<li class='boton_cerrar'><a href=\"javascript:;clearSuggest()\" alt='Cerrar sugerencia'>[ Cerrar ]</a></li></ul>";
				
				ss.innerHTML = result;
				//Empieza el drop down
				startDD();
			}
		}else{
			stopDD();
			clearSuggest();
		}
	}else
		document.getElementById('search_suggest').style.visibility = 'hidden';
}

//Mouse over function
function suggestOver(div_value) {
	div_value.className = 'suggest_link_over';
}
//Mouse out function
function suggestOut(div_value) {
	div_value.className = 'suggest_link';
}
//Click function
function setSearch(value) {
	campo_busqueda.value = value;
	capa = document.getElementById('search_suggest');
	capa.innerHTML = '';
	capa.style.visibility = 'hidden';
	sendForm();
}

function sendForm(){
	document.getElementById('txtSearch').value = campo_busqueda.value;
	document.getElementById('txtSearch').form.submit();
	return true;
}

function clearSuggest(){
	var ss = document.getElementById('search_suggest');
	ss.innerHTML = "";
	ss.style.visibility = 'hidden';
	ss.style.height = '0px';
}
//Quita los tags <b>
function removeB(str){
	while(str.indexOf('<b>') != -1){
		str = str.replace('<b>', '');
	}
	while(str.indexOf('</b>') != -1){
		str = str.replace('</b>', '');
	}
	return str;
}
//Variable que utiliza el Drop Down
var intervalo = ""; //Id del intervalo
var step = 0.25; //Porcentaje de cada paso
var speed = 1; //Tiempo en ms que tarda un paso en milisegundos
var count = 0; //Contador de pasos
var avanzar = false;
function startDD(){
	stopDD();
	count = 0;
	document.getElementById('search_suggest').style.overflow = 'hidden';
	document.getElementById('search_suggest').style.height = '0px';
	document.getElementById('search_suggest').style.visibility = 'visible';
	avanzar = true;
	intervalo = setInterval("DD()", speed);
}
function DD(){
	if(avanzar)
		capa = document.getElementById('search_suggest');
		if(parseInt(capa.style.height) < capa.scrollHeight){
			capa.style.height = Math.round(capa.scrollHeight * step * count) + 'px';
			count++;
		}else
			avanzar = false;
}
function stopDD(){
	clearInterval(intervalo);
	avanzar = false;
}

//Variables de configuración
var dir_fotos_medianas = '/images/products/media/';
var id_imagen_grande = 'imagen_grande';
//Funcion que cambia la imagen actual
function showImg(path){
	imagen = document.getElementById(id_imagen_grande);
/*	var path_img = dir_fotos_medianas + path.split('/').pop();*/
	if(imagen)
		{//imagen.src= path_img;
		imagen.src= path;
		var img = path.split('/');
		
		
		var nombre = img[4]; // nombre de a imagen
		var tienda = img[2]; // tienda
		imagen.alt= "/images/"+tienda+"/fotos/"+nombre;
		
		}
}
