// variables globals
var comercio_actual=1;
var producto_actual=1;
var id_producto=-1;
var id_div_subcat=-1;
var mostra_div_subcat=0;
var popup_actual=-1;
var img_serv_tmp=-1;
var total_compra;
var email_client;
var pestanya=1;
var id_servei_actual=-1;
var tipo_enviar_link=-1;
var id=-1;
var ampliarImagen=0;

function incluir_central(url, force){
    try{    
        if(Ajax.activeRequestCount==0 || force==1)
            new Ajax.Updater('dcentral', url,{evalScripts: true, asynchronous: true});
     }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function posa_focus_menu_click(id){
    try{
	   	var opcions_amb_focus = $$('a.focus_menu');
	    if (opcions_amb_focus.length > 0)
	    	$(opcions_amb_focus[0].id).className='link'; 	
	 
		$(id).className='focus_menu';

    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function posa_focus_menu(id){
    try{
    	if($(id).className!='focus_menu')
			$(id).className='link_hover'; 
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function treu_focus_menu(id){
    try{     
    	if ($(id).className!='focus_menu')
    		$(id).className='link';		
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function treu_focus_menu_tot(){
    try{     
    	var opcions_amb_focus = $$('a.focus_menu');
    	if(opcions_amb_focus.length>0)
    		$(opcions_amb_focus[0]).className='link';		
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function posa_focus_menu_servei_click(id){
    try{
    	id_servei_actual = id;			 
		$(id).className='focus_menu';
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function treu_focus_servei(id){
    try{
    	if (id==id_servei_actual)
    		$(id).className='link_hover';
    	else
    		$(id).className='link';
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function registra_cb(){
    try{
        var globalCallbacks = { onCreate: mostra_carregant, onLoaded: amaga_carregant};
        Ajax.Responders.register( globalCallbacks );
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function mostra_carregant(){
    try{
        seteja_carregant();
        $('dcarregant').style.display = 'block';
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function seteja_carregant(){
    try{
        if (document.documentElement.scrollTop > 0)
            $('dcarregant').style.top = (document.documentElement.scrollTop) + 'px';
        else
            $('dcarregant').style.top = '-1px';
        $('dcarregant').style.left = document.documentElement.clientWidth - 80 + 'px';
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function amaga_carregant(){
    try{
    	$('dcarregant').hide();
        //setTimeout(amaga_carregant, 1000);
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
	}
}    

function incluir_popup(url, id_popup, force, no_transparencia){
    try{
    	popup_actual=id_popup;
        if(Ajax.activeRequestCount==0 || force==1){   
        	if(no_transparencia!=1){
        		$(id_popup).style.opacity=0;
        		$(id_popup).style.filter = 'alpha(opacity=0)';
        	}
            griseja();  	
            new Ajax.Updater(id_popup, url, {evalScripts: true, asynchronous: true});  
            $(id_popup).style.display = 'block'; 
            var pantallax = document.documentElement.clientWidth;
            var pantallay = document.documentElement.clientHeight;     
            var divx = $(id_popup).clientWidth;
            var divy = $(id_popup).clientHeight;
            var x = pantallax/2 - divx/2;
            // si hi ha scroll incrementem la y
            if (document.documentElement.scrollTop > 0)
                  var y = (pantallay/2 - divy/2) + document.documentElement.scrollTop;
            else
                  var y = pantallay/2 - divy/2;
            $(id_popup).style.left = x + 'px';
            $(id_popup).style.top = y + 'px';   
            if(no_transparencia!=1)
            	destransparencia();           
        }
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function incluir_popup_ampliarImagen(url, id_popup, force, no_transparencia){
    try{
    	popup_actual=id_popup;    	
    	// si div = dpopup_ampliarImagen, modifiquem url per agafar imatge gran
    	if(url.indexOf('_thumbnail')>0){
	    	var url2 = url.substring(0, url.indexOf('_thumbnail'));
	    	url = url2 + url.substring(url.length-4,url.length);
    	}
    	
    	ampliarImagen = 1;
    	
        if(Ajax.activeRequestCount==0 || force==1){   
        	if(no_transparencia!=1){
        		$(id_popup).style.opacity=0;
        		$(id_popup).style.filter = 'alpha(opacity=0)';
        	}
            griseja();  	
            new Ajax.Updater(id_popup, url, {evalScripts: true, asynchronous: true});  
            $(id_popup).style.display = 'block'; 
            var pantallax = document.documentElement.clientWidth;
            var pantallay = document.documentElement.clientHeight;     
            var divx = $(id_popup).clientWidth;
            var divy = $(id_popup).clientHeight;
            var x = pantallax/2 - divx/2;
            var y = 40;

            $(id_popup).style.left = x + 'px';
            $(id_popup).style.top = y + 'px';   
            if(no_transparencia!=1)
            	destransparencia();           
        }
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function destransparencia(){
    try{  
    	if(document.all){
		   	var valor_trans;
			valor_trans=$(popup_actual).style.filter.replace(/^alpha\(opacity=/, '');
			valor_trans=valor_trans.replace(/\)$/, '');
			valor_trans=Number(valor_trans)+Number(10);
			$(popup_actual).style.filter = 'alpha(opacity=' + valor_trans + ')';
			if($(popup_actual).style.filter!='alpha(opacity=100)')
				setTimeout(destransparencia, 60);
		}
		else{
			var valor_trans=Number($(popup_actual).style.opacity);
			valor_trans=(Number(valor_trans)+Number(0.1));
			$(popup_actual).style.opacity=valor_trans;
			if($(popup_actual).style.opacity!=1)
				setTimeout(destransparencia, 60);
		}   
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function griseja(){
    try{        
        // hi ha scroll
        if (document.documentElement.clientHeight < document.documentElement.scrollHeight){
            var y = document.documentElement.scrollHeight;
            var x = document.documentElement.scrollWidth;
        }// no hi ha scroll
        else{
            var y = document.documentElement.clientHeight;
            var x = document.documentElement.clientWidth;
        }     
        
        $('dgris').style.height = y + 'px';
        $('dgris').style.width = x + 'px';
        $('dgris').style.display = 'block';
        $('dgris').style.zIndex = $(popup_actual).style.zIndex-1;
        $('dgris').style.display = 'block';
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function desgriseja(){
    try{
    	// tenim 1 popup
    	if(ampliarImagen==0){    
    		$('dgris').style.display = 'none';
    	}
    	// tenim 2 popups
    	else{        	
        	if(popup_actual!=-1){
    	    	if($(popup_actual).style.display=='block')
    	        	$('dgris').style.zIndex=1;
    	        else        	
    	    		$('dgris').style.display='none'; 
    	    }else{
    	    	$('dgris').style.display='none';
    	    }
    	}    	
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
	}
}  

function desincluir_popup(){
    try{     
		$(popup_actual).style.display = 'none';		  
	  	desgriseja();
    	if (ampliarImagen==1){
    		ampliarImagen=0;
    		popup_actual = 'dpopup_prod';    		
    		$(popup_actual).style.display = 'dpopup_prod';
    		griseja();    	
    	}else{ 
		  	$(popup_actual).innerHTML='';
		  	document.title = "Brand Boulevard";
    	}
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}


 
function centra_dsuperior(){
    try{
    	var pantallax = document.documentElement.clientWidth;
        var pantallay = document.documentElement.clientHeight; 
        var divx = $('dsuperior').clientWidth;
        var divy = $('dsuperior').clientHeight;
        var x = pantallax/2 - divx/2;
        var y = pantallay/2 - divy/2;
        $('dsuperior').style.left = x + 'px';
        $('dsuperior').style.top = y + 'px';   
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
	}
}  



function muestra_calendario(mes, ano, e, id_text){
    try{
    	// activem envent per amagar calendari 
    	if (document.all) // IE o FF
	  		document.attachEvent("onmousedown", amaga_calendari);
	  	else
	  		document.addEventListener('mousedown', amaga_calendari, false);
	  	
	  	// iniciem creacio calendari
    	var meses = new Array(12);
		meses[1] = "Enero";
		meses[2] = "Febrero";
		meses[3] = "Marzo";
		meses[4] = "Abril";
		meses[5] = "Mayo";
		meses[6] = "Junio";
		meses[7] = "Julio";
		meses[8] = "Agosto";
		meses[9] = "Septiembre";
		meses[10] = "Octubre";
		meses[11] = "Noviembre";
		meses[12] = "Diciembre";

    	var hoy=new Date();
    	if (mes!=-1){
    		hoy.setMonth(mes);
    		hoy.setYear(ano);
    	}
    	var dia_actual=hoy.getDate();
    	var mes_actual=meses[hoy.getMonth()+1];
    	var ano_actual=hoy.getUTCFullYear();
    	var fecha_a_devolver ="";
    	hoy.setDate(1);
    	var dia_empieza_mes=hoy.getDay();
 		var mes_anterior = hoy.getMonth()-1;
 		var mes_posterior = hoy.getMonth()+1;
 		var ano_anterior = ano_actual;
 		var ano_posterior = ano_actual;
 		var i;
 		if (mes_anterior==-1){
 			mes_anterior=11;
 			ano_anterior=ano_anterior-1;
 		}
 	 	if (mes_posterior==12){
 			mes_posterior=0;
 			ano_posterior=ano_posterior+1;
 		}
 		var codigo = "<table id=\"element_calendari\" class='tcalendari'><tr id=\"element_calendari\"><td id=\"element_calendari\" class='td_separa_cal'></td></tr>"; 		
 		codigo += "<tr id=\"element_calendari\"><td id=\"element_calendari\" colspan='7'><span id=\"element_calendari\" class='accions_calendari' title='Ano'><select class='select_cal' onchange='muestra_calendario("+ (hoy.getMonth()) + ", this.options[this.selectedIndex].text,-1,\"" + id_text + "\")' id=\"element_calendari\">";
 		for(i=new Date().getUTCFullYear(); i>1920; i--){
 			if (ano_actual==i)
 				codigo += "<option id=\"element_calendari\" selected>" +i+ "</option>";
 			else
 				codigo += "<option id=\"element_calendari\">" +i+ "</option>";
 		} 		
 		codigo += "</select></span></td></tr>";
 		codigo += "<tr id=\"element_calendari\"><td id=\"element_calendari\" colspan='7' class='tit_calendari'><ul id=\"element_calendari\" class=\"ul_mes_cal\"><li id=\"element_calendari\"><a id=\"element_calendari\" onmouseover=\"this.className='accions_calendari_hover'\" onmouseout=\"this.className='accions_calendari'\" id=\"element_calendari\" class='accions_calendari' title='Mes anterior' onclick='muestra_calendario(" + mes_anterior + "," + ano_anterior + ",-1,\"" + id_text + "\")'><</a><li id=\"element_calendari\" class=\"li_mes_cal_mig\">" + meses[hoy.getMonth()+1] + "</li><li id=\"element_calendari\"><a id=\"element_calendari\" onmouseover=\"this.className='accions_calendari_hover'\" onmouseout=\"this.className='accions_calendari'\" class='accions_calendari' title='Mes posterior' onclick='muestra_calendario(" + mes_posterior + "," + ano_posterior + ",-1,\"" + id_text + "\")'>></a></li></ul></td></tr>";
 		codigo += "<tr id=\"element_calendari\"><td id=\"element_calendari\" class='tit_dies_calendari'>L</td><td id=\"element_calendari\" class='tit_dies_calendari'>M</td><td id=\"element_calendari\" class='tit_dies_calendari'>M</td><td id=\"element_calendari\" class='tit_dies_calendari'>J</td><td id=\"element_calendari\" class='tit_dies_calendari'>V</td><td id=\"element_calendari\" class='tit_dies_calendari'>S</td><td id=\"element_calendari\" class='tit_dies_calendari'>D</td></tr>";
 		while (mes_actual==meses[hoy.getMonth()+1]){
 			fecha_a_devolver = hoy.getDate() + "/" + (hoy.getMonth()+1) + "/" + hoy.getUTCFullYear();
 			if(hoy.getDate()==1){
 				codigo += "<tr id=\"element_calendari\">"
 				if (hoy.getDay()==0)
 					codigo += "<td id=\"element_calendari\"></td><td id=\"element_calendari\"></td><td id=\"element_calendari\"></td><td id=\"element_calendari\"></td><td id=\"element_calendari\"></td><td id=\"element_calendari\"></td>"
 				else{
	 				for(var x=1; x<hoy.getDay();x++)
	 					codigo += "<td id=\"element_calendari\"></td>"
	 			}
 			}	
	    	codigo += "<td id=\"element_calendari\" onmouseover=\"this.className='td_calendari_hover'\" onmouseout=\"this.className='td_calendari'\" onclick=\"$('dcalendari').style.display='none';$('"+ id_text + "').value='" + fecha_a_devolver + "'\" class='td_calendari'>" + hoy.getDate() + "</td>";
 			if (hoy.getDay()%7==0){
 				codigo += "</tr><tr>"
 			}	 
 			hoy.setDate(hoy.getDate()+1);
 		}
 		codigo += "</tr>" 		
 		codigo+="</table>";
 		$('dcalendari').innerHTML=codigo;
        // si el calendari esta creat no cal que el situem
        if(e!=-1){        	
	        if (document.all){   // IE = true o FF = false
	        	pos_y = event.clientY - 147;
	            pos_x = event.clientX - 180;
	        }
	        else{
	        	pos_y = e.clientY - 147;
	        	pos_x = e.clientX - 180;
	        }
	        // si l'scroll s'ha mogut el contemplem
	        if (document.documentElement.scrollTop > 0)
	        	pos_y = pos_y + document.documentElement.scrollTop;
	        $('dcalendari').style.top = pos_y + 'px';
	        $('dcalendari').style.left = pos_x + 'px';   
	        $('dcalendari').style.display = 'block';   
        }
    }
    catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}
 
function amaga_calendari(e){
    try{
    	if (document.all){ // IE o FF
    		if(event.srcElement.id!='element_calendari'){
				$('dcalendari').style.display='none';  
		    	document.detachEvent("onmousedown", amaga_calendari);
		    }
    	}
    	else{
    		if(e.target.id!='element_calendari'){
    			$('dcalendari').style.display='none'; 
    			document.removeEventListener('mousedown', amaga_calendari, false);   
    		} 			
    	}
    }
    catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}
function mira_condiciones(){
    try{
    	if ($('condiciones').checked)
    		verificar_dades_registre('frm_alta_cliente');    	
    	else
    		mostra_resultat("Debes aceptar los T&eacute;rminos y condiciones de uso de Brand Boulevard");
    }
    catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function verificar_dades_registre(id_formulari, id_cliente){
    try{
    	params="accio=0&procedure=sp_" + id_formulari.substring(4);

    	var falten_camps=0;
    	var error_format=0;
    	var elements_form = $(id_formulari).getElements();
    	var resta_elements=1;
    	
    	if(id_formulari=='frm_alta_cliente')
    		resta_elements=2;
    
    	for(x=0;x<elements_form.size()-resta_elements; x++){    		
    		// comprovem que no faltin camps requerits
    		$('text_' + elements_form[x].id).className='camp';
    		// mirem que el camp sigui requerit, sino saltem pas de canviar color
    		if($('text_' + elements_form[x].id).innerHTML.indexOf('*')!=-1){
	    		if ($(elements_form[x].id).value==''){
	    			$(elements_form[x].id).className='text_requerit';
	    			falten_camps=1;
	    		}   	    	
	    	}	//comprovem valor cp
    		if(elements_form[x].id=='cp'){
	    		if(elements_form[x].value<8001||elements_form[x].value>8042){
	    			$('text_' + elements_form[x].id).className='camp_requerit';
	    			mostra_resultat('S&oacute;lo se permiten c&oacute;digos postales de Barcelona');
	    			error_format=1;
	    		}	    		
	    	}	//comprovem que les contrasenyes siguin iguals
	    	else if(elements_form[x].id=='repetir_contrasena'){
	    		if(elements_form[x].value!=elements_form[x-1].value){
	    			$('text_' + elements_form[x-1].id).className='camp_requerit';
	    			mostra_resultat('Las contrase&ntilde;as introducidas no coinciden');
	    			error_format=1;
	    		}
	    	}	//comprovem que el camp email contingui '@' i '.'
	    	else if(elements_form[x].id=='email'){		
	    		email_client=elements_form[x].value;   		
	    		if((elements_form[x].value.indexOf('@')==-1)||(elements_form[x].value.indexOf('.')==-1)){	    		
	    			$('text_' + elements_form[x].id).className='camp_requerit';
	    			mostra_resultat('El formato del e-mail no &eacute;s correcto');
	    			error_format=1;
	    		}
	    	}	//el camp repetir_contrasena no l'afegim als paràmetres, tots els altres sí
	    	if(elements_form[x].id!='repetir_contrasena')
    			params+= "&" + $(elements_form[x]).id + "=" + $(elements_form[x]).value;
    	}   
    	// afegim camp vip = 0 per defecte
    	params+="&vip=0"; 	
    	// afegim variable per si l'usuari vol rebre newsletter o no
    	if($('newsletter').checked)
    		params+="&newsletter=1";
    	else
    		params+="&newsletter=0";
    	// fem insert per alta
    	if(id_formulari=='frm_alta_cliente'){    
    		params+="&id_estado_cliente=1";
    		if (falten_camps==0 && error_format==0)
    			new Ajax.Request ('accions', { parameters: params, onComplete: resp_alta_registre});
    		else if (falten_camps==1)
    			mostra_resultat('Faltan campos necesarios para el registro');
    	}
    	// fem update per modificacio registre
    	else{    		
    		params+="&id_estado_cliente=2";
    		params+="&id=" + id_cliente;
    		if (falten_camps==0 && error_format==0)
    			new Ajax.Request ('accions', { parameters: params, onComplete: resp_modif_registre});
    		else if (falten_camps==1)
    			mostra_resultat('Faltan campos necesarios para el registro.');
    	}
    }
    catch(e){
    	mostra_error(e.message);        
    }
}

function resp_alta_registre(resp){
    try{
        if(resp.responseText.indexOf('Error')!=-1){
        	if(resp.responseText.indexOf('Duplicate')!=-1 && resp.responseText.indexOf('key 2')!=-1)
        		mostra_resultat("Existe un usuario registrado con el mismo e-mail.");    
        	else if (resp.responseText.indexOf('Duplicate')!=-1 && resp.responseText.indexOf('key 3')!=-1)
        		mostra_resultat("Existe un usuario registrado con el mismo NIF.");  
        	else
        		mostra_error(resp.responseText);              
        }
        else if (resp.responseText=='ok'){
        	incluir_central('registro/alta_ok.jsp', 1);
        	// enviem mail
        	params="accio=7&email=" + email_client;
        	new Ajax.Request ('accions', { parameters: params, onComplete: resp_mail_registro});
        }
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_mail_registro(resp){
    try{
        if(resp.responseText.indexOf('Error')!=-1)
        	mostra_error(resp.responseText);                    
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_modif_registre(resp){
    try{
        if(resp.responseText.indexOf('Error')!=-1){
        	if (resp.responseText.indexOf('Duplicate')!=-1 && resp.responseText.indexOf('key 3')!=-1)
        		mostra_resultat("Existe un usuario registrado con el mismo NIF"); 
        	else
        		mostra_error(resp.responseText);       
        }       
        else if(resp.responseText=='ok'){
            // recarreguem la cesta per si ha modificat el nom
            params = 'accio=4';
       		new Ajax.Request('accions', {parameters: params, onComplete: resp_refresca_nom});	        	
        	// mostrem que tot ha anat be
         	incluir_central('registro/modif_ok.jsp', 1);
        }
    }
    catch(e){
        mostra_error('Error JavaSript: ' + e.message);
    }
}

function resp_refresca_nom(resp){
    try{
		if(resp.responseText=='ok')
        	new Ajax.Updater('dcesta', 'cesta/cesta.jsp', {evalScripts: true, asynchronous: true});
        else
        	 mostra_error(resp.responseText);
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}
            
function control_numeric(e){
    try{
        var disable = true;
        if (document.all){ // IE 
            // numeros
            if (event.keyCode>=48 && event.keyCode<=57)
                disable = false;
            if (disable)
                event.returnValue = false;
        }
        else{ // firefox 
            if (e.which==8 || e.which==9)
                disable = false;
            // teclat numeric
            if (e.which>=48 && e.which<=57)
                disable = false;
            //  flexetes
            if (e.which==0)
                disable = false;
            if (disable)
                return false;
        }    
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function validar(){
    try{
    	var user = $('login').value;
    	var pass = $('pass').value;
    	var recuerda=1;
    	if($('recuerda').checked==false)
    		recuerda=0;
    	// mirem que estiguin omplerts els camps requerits
    	if (user != '' && pass !=''){
		    if (Ajax.activeRequestCount==0){
		    	params="email=" + user + "&contrasena=" + pass + "&recuerda=" + recuerda;		    	
		        new Ajax.Request ('Validar', { parameters: params, onComplete: resp_validar});
		    }
		}
		else
			mostra_resultat("Has de introducir los campos e-mail y contrase&ntilde;a");
    }catch(e){
    	mostra_error("validar: "+e.message);
    }
}

function resp_validar(resp){
    try{
        if(resp.responseText.indexOf('Error')!= -1)
        	mostra_error(resp.responseText);   
        else if (resp.responseText=='nook')
        		mostra_resultat("No has introducido correctamente el e-mail o la contrase&ntilde;a");
        else if (resp.responseText=='noactivo')
        		mostra_resultat("El usuario no est&aacute; activo");              
        else if (resp.responseText=='pendiente')
        		mostra_resultat("El usuario est&aacute; pendiente de activaci&oacute;n. Una vez realizado el registro se env&iacute;a un e-mail con las instruciones para activar tu cuenta de Brand Boulevard."); 
        else
        	crea_cesta();
    
    }catch(e){
    	mostra_error("catch: "+e.message);
    }
}

function crea_cesta(){
    try{
    	new Ajax.Updater('dcesta', 'cesta/cesta.jsp', {evalScripts: true, asynchronous: true});    
    }catch(e){
    	mostra_error("catch: "+e.message);
    }
}

function anadir_cesta(prod_talles, marca, modelo, precio, referencia, iva){
	try{
		var id;
		var talla;
		ref_producto = referencia;
		if(prod_talles==1){
			if(id_producto_talla=="-1"){				
		 		resp_anadir_cesta("falta talla");
		 	}else{
		 		id = "p_" + id_producto_talla;
		 		talla = $(id).innerHTML;
		 		
		 		if(talla!=null)	
					params = 'accio=2&id_producto_no_clon=' + id_producto + '&id_producto=' + id_producto_talla + '&marca=' + marca + '&modelo=' + modelo + '&talla=' + talla + '&precio=' + precio + '&referencia=' + referencia + '&iva=' + iva;
        		else
        			params = 'accio=2&id_producto_no_clon=' + id_producto + '&id_producto=' + id_producto + '&marca=' + marca + '&modelo=' + modelo + '&talla=' + talla + '&precio=' + precio + '&referencia=' + referencia + '&iva=' + iva;
        		new Ajax.Request('accions', {parameters: params, onComplete: resp_anadir_cesta});	
		 	}
		}else{
			params = 'accio=2&id_producto=' + id_producto + '&id_producto_no_clon=' + id_producto + '&marca=' + marca + '&modelo=' + modelo + '&talla=-1&precio=' + precio + '&referencia=' + referencia + '&iva=' + iva;
        	new Ajax.Request('accions', {parameters: params, onComplete: resp_anadir_cesta});	
		}
	}catch(e){
    	mostra_error("Error JavaScript: "+e.message);    	
    }
}

function resp_anadir_cesta(resp){
	try{
		// si hi  ha menys de 6 unitas recreem la cistella
		if(resp.responseText<5){
			new Ajax.Updater('dcesta', 'cesta/cesta.jsp', {evalScripts: true, asynchronous: true});
			mostra_resultat("Se ha a&ntilde;adido un producto a la cesta.<br />Este producto queda reservado en tu cesta durante 15 minutos.");
			// recarreguem el popup per tornar a contar les unitats
			incluir_popup('productos/ver_producto.jsp?pestanya=' + pestanya + '&id_producto=' + id_producto, 'dpopup_prod', 1, 1);
		}
		// sino mostrem misatge informant
		else if(resp=="falta talla")
			 mostra_resultat("Este producto requiere seleccionar una talla.");
		else
			mostra_resultat("Por motivos de seguridad, s&oacute;lo se permite adquirir 5 productos al d&iacute;a por comprador.<br />Si desea hacer una reserva extra, pongase en contacto con el comercio proveedor.<br />Disculpe las molestias.");
	}catch(e){
		mostra_error('Error JavaScript: ' + e.message);    	
    }
}

function sacar_cesta(id){
	try{
        params = 'accio=3&id_producto=' + id;
        new Ajax.Request('accions', {parameters: params, onComplete: resp_sacar_cesta, asynchronous: false});
	}catch(e){
    	mostra_error("catch anadir cesta: "+e.message);
    }
}

function resp_sacar_cesta(resp){
	try{
		// si hi  ha menys de 6 unitas recreem la cistella
		if(resp.responseText=='ok')
			new Ajax.Updater('dcesta', 'cesta/cesta.jsp', {evalScripts: true, asynchronous: true});
		// sino mostrem misatge informant
		else
			mostra_error(resp.responseText);
	}catch(e){
		mostra_error('Error JavaScript: ' + e.message);
    }
}

function incluir(div, url){
    try{
        if(Ajax.activeRequestCount==0)
            new Ajax.Updater(div, url,{evalScripts: true, asynchronous: true});
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function mostra_resultat(text){
    try{
    	griseja(); 
    	$('dmissatge').innerHTML=text;
        $('dresultat').style.display = 'block'; 
        var pantallax = document.documentElement.clientWidth;
        var pantallay = document.documentElement.clientHeight; 
        var divx = $('dresultat').clientWidth;
        var divy = $('dresultat').clientHeight;
        var x = pantallax/2 - divx/2;
        // si ha scroll incrementem la y
        if (document.documentElement.scrollTop > 0)
        	var y = (pantallay/2 - divy/2) + document.documentElement.scrollTop;
        else
        	var y = pantallay/2 - divy/2;
       $('dresultat').style.left = x + 'px';
       $('dresultat').style.top = y + 'px';             
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function amaga_resultat(){
    try{
    	desgriseja(); 
        $('dresultat').style.display = 'none';             
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function mostra_error(text){
    try{
    	griseja(); 
    	$('dmissatgeerror').innerHTML=text;
        $('derror').style.display = 'block'; 
        var pantallax = document.documentElement.clientWidth;
        var pantallay = document.documentElement.clientHeight; 
        var divx = $('derror').clientWidth;
        var divy = $('derror').clientHeight;
        var x = pantallax/2 - divx/2;
        // si ha scroll incrementem la y
        if (document.documentElement.scrollTop > 0)
        	var y = (pantallay/2 - divy/2) + document.documentElement.scrollTop;
        else
        	var y = pantallay/2 - divy/2;
       $('derror').style.left = x + 'px';
       $('derror').style.top = y + 'px';             
    }catch(e){
    	mostra_error(e.message);
    }
}

function amaga_error(){
    try{
    	desgriseja(); 
        $('derror').style.display = 'none';             
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function ampliar_imagen(img){    
	try{          
        $('img_gran').src = 'http://www.brandboulevard.es/imgbb/productos/' + id_producto +  '/' + img + '_thumbnail2.jpg';          
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function mostra_subcategorias(id_categoria_pare){
    try{
    	var ul_subcats = $$('ul.ul_subcategorias_' + id_categoria_pare);
    	ul_subcats[0].style.display='block';
    	$('cadena').blur();  	
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function amaga_subcategorias(id_categoria_pare){
    try{
    	var ul_subcats = $$('ul.ul_subcategorias_' + id_categoria_pare);
    	ul_subcats[0].style.display='none';       
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function mostra_caracteristiques(opcio){
	try{
		if(opcio==1){
			pestanya=1;
			$('ddetall_prod').style.display = 'block';
			$('despecific_prod').style.display = 'none';	
		}else{
			pestanya=2;
			$('ddetall_prod').style.display = 'none';
			$('despecific_prod').style.display = 'block';
		}
	}catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function selecciona_talla(id_prod){
	try{		
		if(id_producto_talla!=-1)
			$(id_producto_talla).className = 'talla';			
		$(id_prod).className = 'talla_hover';
		id_producto_talla=id_prod;
	}catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function posa_focus_talla_click(id){
    try{
	   	var talles_amb_focus = $$('a.talla_seleccionada');
	    if (talles_amb_focus.length > 0)
	    	$(talles_amb_focus[0].id).className='talla'; 			 
		$(id).className='talla_seleccionada';
		id_producto_talla = id.substring(2);
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function posa_focus_talla(id){
    try{
    	if($(id).className!='talla_seleccionada')
			$(id).className='talla_hover'; 
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function treu_focus_talla(id){
    try{        
    	if ($(id).className!='talla_seleccionada')
    		$(id).className='talla';		
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function buscar(ordre,id_categoria,id_comercio,cadena){
    try{
    	paraules = cadena.split(" ");    	
    	if(paraules.length>3){
    		mostra_resultat("Solo se permite un m&aacute;ximo de tres palabras para la condici&oacute;n de b&uacute;squeda.");
    		
    	}else{
	    	if(cadena!=''){
	    		cadena=encodeURIComponent(cadena);
				incluir_central('productos/productos.jsp?id_categoria='+id_categoria+'&id_comercio='+id_comercio+'&cadena='+cadena+'&ordre='+ordre);
			}else
				mostra_resultat('Has de introducir el texto para buscar productos: Marca, modelo, descripci&oacute;n, comercio o referencia.');
		}
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}


function enter_logon(e){
    try{
       if (document.all){ // IE o FF
            if(event.keyCode==13)
                validar();
        }
        else{  
            if(e.which==13)
                validar()
        }        
    }catch(e){
        mostraerror('Error JavaScript: ' + e.message);
    }
}

function enter_busqueda(ordre,id_categoria,id_comercio,e){
    try{
       if (document.all){ // IE o FF
            if(event.keyCode==13)
                buscar(ordre,id_categoria,id_comercio,$('cadena').value);
        }
        else{  
            if(e.which==13)
                buscar(ordre,id_categoria,id_comercio,$('cadena').value);
        }        
    }catch(e){
        mostraerror('Error JavaScript: ' + e.message);
    }
}

function refresca_prods_compra(){
    try{    
		new Ajax.Updater('dcompra', 'cesta/prods_compra.jsp',{evalScripts: true, asynchronous: true});
    }catch(e){
    	mostra_error('Error JavaScript: ' + e.message);
    }
}

function incluir_tooltip(evt, url){
    try{
        if($('dpopup_srv').style.display!='block'){
          	new Ajax.Updater('dpopup_srv', url, {evalScripts: true, asynchronous: true});  
          	$('dpopup_srv').style.display = 'block';
        	if(document.all)
            	document.attachEvent('onmousemove', mou_tooltip);
        	else
            	document.addEventListener('mousemove', mou_tooltip, false);            	
        }        
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function desincluir_tooltip(){
    try{
    	$('dpopup_srv').style.display = 'none';
	   	if(document.all)
    	   	document.detachEvent('onmousemove', mou_tooltip);
        else
           	document.removeEventListener('mousemove', mou_tooltip, false);                 
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}


function mou_tooltip(evt){
    try{   		
        if(document.all){
        	ratolix = event.clientX;
            ratoliy = event.clientY;
        }
        else{
           	ratolix = evt.clientX;
           	ratoliy = evt.clientY;
        }   
        $('dpopup_srv').style.left = ratolix-270 + 'px';
        $('dpopup_srv').style.top = ratoliy+15 + 'px';    
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function verifica_campos_envio(){
    try{   	
    	var resultat=1;
    	
    	// desmarquem possibles camps senyalats
    	$('cp_envio').className='text_compra';
    	$('nombre_envio').className='text_compra';
    	$('direccion_envio').className='text_compra';
    	
    	// verifiquem dades necesaries    
    	if ($('cp_envio').value==''){
	    	$('cp_envio').className='text_compra_requerit';
	    	mostra_resultat('Es necesario introducir un c&oacute;digo postal para el envio.');
	    	resultat=-1;
	    }	
    	else if($('cp_envio').value<8001 || $('cp_envio').value>8042){
	    	$('cp_envio').className='text_compra_requerit';
	    	mostra_resultat('S&oacute;lo se permiten c&oacute;digos postales de Barcelona.');
	    	resultat=-1;
	    }	   	    
	    else if ($('nombre_envio').value==''){
	    	$('nombre_envio').className='text_compra_requerit';
	    	mostra_resultat('Es necesario introducir el Nombre de la persona para el envio.');
	    	resultat=-1;
	    }
	    else if ($('direccion_envio').value==''){
	    	$('direccion_envio').className='text_compra_requerit';
	    	mostra_resultat('Es necesario introducir una direcci&oacute;n para el envio.');
	    	resultat=-1;
	    }
	    return resultat;
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function procesar_compra(){
    try{   	
    	if(Ajax.activeRequestCount==0){
    		// mirem que no hagi expirat el bloqueig d'algun producte
    		params="accio=9";
    		new Ajax.Request ('accions', { parameters: params, onComplete: resp_procesar_compra});
	    }
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_procesar_compra(resp){
    try{
    	if(resp.responseText=='ok'){
    		params="accio=5&total_compra=" + total_compra;
    		new Ajax.Request ('accions', { parameters: params, onComplete: resp_procesar_compra2});
    	}
    	else{
    		// recarreguem la cistella
        	new Ajax.Updater('dcesta', 'cesta/cesta.jsp', {evalScripts: true, asynchronous: true});
        	
        	// amaguem finestra procesar compra
        	desincluir_popup();
        	
        	mostra_resultat("Ha expirado el bloqueo de alg&uacute;n producto de su cesta.<br /> Recuerde que cada producto puede permanacer en la cesta durante un tiempo m&aacute;ximo de 15 minutos.");
    	}
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_procesar_compra2(resp){
    try{
    	var Ds_Merchant_Amount;
    	var Ds_Merchant_Currency;
    	var Ds_Merchant_Order;
    	var Ds_Merchant_MerchantCode;
    	var Ds_Merchant_MerchantURL;
    	var Ds_Merchant_Terminal;
       	var Ds_Merchant_MerchantSignature;
    	var Ds_Merchant_TransactionType;
    	var Ds_Merchant_Titular;
    	var xmlDoc = resp.responseXML.documentElement;
    	var params;
    	var form_tpv;
    	var camp;
    	
    	// agafem el valor del preu total de al compra
       	Ds_Merchant_Amount=xmlDoc.childNodes[0].firstChild.data;
       	if(Ds_Merchant_Amount==0)
       		mostra_resultat("Para poder procesar una compra es necesario tener productos en la cesta.");
       	else if (verifica_campos_envio()==1){   
       		// creem popup i mirem si es bloqueja
       		var finestra_tpv = window.open("_blank", "finestra_tpv");
       		if (finestra_tpv && finestra_tpv.top) {    		      		
	       		// setegem totes les variables necesaries per a pasarles al TPV de La Caixa
	       		Ds_Merchant_Currency=xmlDoc.childNodes[1].firstChild.data;
	    		Ds_Merchant_Order=xmlDoc.childNodes[2].firstChild.data;
	    		Ds_Merchant_MerchantCode=xmlDoc.childNodes[3].firstChild.data;
	    		Ds_Merchant_MerchantURL=xmlDoc.childNodes[4].firstChild.data;
	    		Ds_Merchant_Terminal=xmlDoc.childNodes[5].firstChild.data;
	       		Ds_Merchant_MerchantSignature=xmlDoc.childNodes[6].firstChild.data;
	    		Ds_Merchant_TransactionType=xmlDoc.childNodes[7].firstChild.data;
	    		Ds_Merchant_Titular=xmlDoc.childNodes[8].firstChild.data;
	    		    		
	    		form_tpv = document.createElement("FORM");
	    		$('dform_tpv').appendChild(form_tpv);
				form_tpv.setAttribute("method", "post");
				// entorn proves
				//form_tpv.setAttribute("action", "https://sis-t.sermepa.es:25443/sis/realizarPago");		
				// entorn prod
				form_tpv.setAttribute("action", "https://sis.sermepa.es/sis/realizarPago");	
				form_tpv.setAttribute("target", "finestra_tpv");
				
				// insertem camps necessaris per TPV de La Caixa
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_Amount");
				camp.setAttribute("value", Ds_Merchant_Amount);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_Currency");
				camp.setAttribute("value", Ds_Merchant_Currency);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_Order");
				camp.setAttribute("value", Ds_Merchant_Order);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_MerchantCode");
				camp.setAttribute("value", Ds_Merchant_MerchantCode);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_MerchantURL");
				camp.setAttribute("value", Ds_Merchant_MerchantURL);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_Terminal");
				camp.setAttribute("value", Ds_Merchant_Terminal);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_MerchantSignature");
				camp.setAttribute("value", Ds_Merchant_MerchantSignature);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_TransactionType");
				camp.setAttribute("value", Ds_Merchant_TransactionType);			
				form_tpv.appendChild(camp);
			
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_Titular");
				camp.setAttribute("value", Ds_Merchant_Titular);			
				form_tpv.appendChild(camp);
				
				camp = document.createElement("input");              
				camp.setAttribute("name", "Ds_Merchant_Product_Description");
				camp.setAttribute("value", "Productos Brand Boulevard");			
				form_tpv.appendChild(camp);
				
				form_tpv.submit();	
				
				crear_pedido(Ds_Merchant_Order);
			}
			else{
				mostra_resultat("Se ha detectado que su navegador bloquea los popups.<br />Para poder procesar la compra es necesario que permita la creaci&oacute;n de popups desde Brand Boluevard.<br />Gracias.");
			}		
       	}    	
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function crear_pedido(ref_pedido){
    try{
    	var cp, nombre, poblacion, direccion, comentarios, horario_entrega, telefono;
    	
    	// agafem els valors necesaris del formulari
    	nombre = $('nombre_envio').value;
    	direccion = $('direccion_envio').value;
    	poblacion = $('poblacion_envio').value;
    	cp = $('cp_envio').value;
    	telefono = $('telefono_envio').value;
    	if($('horario_entrega_envio1').checked)
    		horario_entrega = $('horario_entrega_envio1').value;
    	else if($('horario_entrega_envio2').checked)
    		horario_entrega = $('horario_entrega_envio2').value;
    	else if($('horario_entrega_envio3').checked)
    		horario_entrega = $('horario_entrega_envio3').value;
    	comentarios =  $('comentarios_envio').value;
    	
    	params="accio=6&ref_pedido=" + ref_pedido + "&nombre=" + nombre + "&direccion=" + direccion + "&poblacion=" + poblacion + "&cp=" + cp + "&telefono=" + telefono + "&horario_entrega=" + horario_entrega + "&comentarios=" + comentarios;
        new Ajax.Request ('accions', { parameters: params, onComplete: resp_crear_pedido});   
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_crear_pedido(resp){
    try{
        if(resp.responseText.indexOf('Error')!=-1)
        	mostra_error(resp.responseText); 
        // mostrem que s'ha generat la comanda correctament
        else{
        	// recarreguem la cistella i passem parametre per buidarle
        	new Ajax.Updater('dcesta', 'cesta/cesta.jsp?purga=1', {evalScripts: true, asynchronous: true});
        	
        	// amaguem finestra procesar compra
        	desincluir_popup();
        	// mostrem missatge informant que s'ha creat la comanda correctament
        	mostra_resultat("Nuestro Sistema est&aacute; sincronizando datos con el Sistema de Pagos protegidos de \"La Caixa\" / Servired. Consulte su correo electr&oacute;nico para obtener la confirmaci&oacute;n de su pedido.<br />Si se demorara la confirmaci&oacute;n, por favor, comun&iacute;quenoslo a trav&eacute;s de Soluci&oacute;n de Problemas en el Men&uacute; Principal.<br />Gracias por comprar en BrandBoulevard.es.");
        }
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function solucion_problemas(){
    try{   	    	
    	if(Ajax.activeRequestCount==0){
	    	var falten_camps=0;
	    	var params = "accio=8";
	    	var nombre = $('nombre').value;
	    	var telefono = $('telefono').value;
	    	var email = $('email').value;
	    	var descripcion = $('descripcion').value;
	    	var problema = $('problema').options[$('problema').selectedIndex].text;
	    	
	    	if (nombre=='' || telefono=='' || email=='' || descripcion=='' || problema=='')
	    		mostra_resultat("Es necesario rellenar todos los campos del formulario.");
	    	else if(email.indexOf('@')==-1 || email.indexOf('.')==-1)    		
		   		mostra_resultat('El formato del e-mail no es correcto');
		    else{
		    	params+="&nombre=" + nombre + "&telefono=" + telefono + "&email=" + email + "&descripcion=" + descripcion + "&problema=" + problema;
		    	new Ajax.Request ('accions', { parameters: params, onComplete: resp_solucion_problemas});	    
		    }
		}
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_solucion_problemas(resp){
    try{
        if(resp.responseText.indexOf('Error')!=-1)
        	mostra_error(resp.responseText); 
        else{
        	$('frm_problema').reset();        	
        	mostra_resultat("Hemos registrado tu notificaci&oacute;n.<br />En breve nos pondremos en contacto contigo.");
        }
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function alta_newsletter(){
	try{		
		var email = $('email_newsletter').value;
		var id_formulari = 'frm_alta_newsletter';
		var params="accio=0&procedure=sp_" + id_formulari.substring(4)+"&email="+email;
		if(email=="")
			mostra_resultat("Debes instroducir una direcci&oacute;n de e-mail.");
		else if((email.indexOf('@')==-1)||(email.indexOf('.')==-1))
   			mostra_resultat("El formato del e-mail no &eacute;s correcto.");
	    else
	    	new Ajax.Request ('accions', { parameters: params, onComplete: resp_alta_newsletter});
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_alta_newsletter(resp){
	try{
		if(resp.responseText=='ok'){
			mostra_resultat("La suscripci&oacute;n se ha realizado correctamente.");
			 $('email_newsletter').value='';
		}
		else
			mostra_resultat(resp.responseText);
	}catch(e){
		mostra_error('Error JavaScript: ' + e.message);    	
    }
}

function centra_popup(){
    try{
    	var pantallax = document.documentElement.clientWidth;
        var pantallay = document.documentElement.clientHeight;     
        var divx = $(popup_actual).clientWidth;
        var divy = $(popup_actual).clientHeight;
        var x = pantallax/2 - divx/2;
        // si hi ha scroll incrementem la y
        if (document.documentElement.scrollTop > 0)
        	var y = (pantallay/2 - divy/2) + document.documentElement.scrollTop;
        else
        	var y = pantallay/2 - divy/2;
        $(popup_actual).style.left = x + 'px';
            $(popup_actual).style.top = y + 'px';             
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function cambia_flash_comocomprar(){
	try{
		if($("combo_comocomprar").selectedIndex>0){
			switch($("combo_comocomprar").selectedIndex){
				case 1:	$('dflash_comocomprar').innerHTML = "<embed src=\"/imgbb/ayuda/comoregistrarse.swf\" width=\"665\" height=\"399\"></embed>";
					break;
				case 2:	$('dflash_comocomprar').innerHTML = "<embed src=\"/imgbb/ayuda/comobucar_demostracion.swf\" width=\"665\" height=\"399\"></embed>";
					break;
				case 3:	$('dflash_comocomprar').innerHTML = "<embed src=\"/imgbb/ayuda/comoseleccionarunproducto.swf\" width=\"665\" height=\"399\"></embed>";
					break;
				case 4:	$('dflash_comocomprar').innerHTML = "<embed src=\"/imgbb/ayuda/estadodesucompra.swf\" width=\"665\" height=\"399\"></embed>";
					break;
				case 5:	$('dflash_comocomprar').innerHTML = "<embed src=\"/imgbb/ayuda/suscribirsenewsletter.swf\" width=\"665\" height=\"399\"></embed>";
					break;	
			}
		}
	}catch(e){
		   mostra_error('Error JavaScript: ' + e.message);
    }
}
function codifica(cadena){
	try{
		var c = encodeURIComponent(cadena);		
		
		return c;
	}catch(e){
		mostra_error('Error JavaScript: ' + e.message);
	}
}

function muestra_enviar_link(tipo){
    try{
    	// posem les textbox sense vermell
    	$('nombre_amigo').className='text_llarg'
	    $('email_amigo').className='text_llarg';
    	tipo_enviar_link=tipo;
    	$('nombre_amigo').value='';
    	$('email_amigo').value='';
    	griseja(); 
        $('denviarlink').style.display = 'block'; 
        var pantallax = document.documentElement.clientWidth;
        var pantallay = document.documentElement.clientHeight; 
        var divx = $('denviarlink').clientWidth;
        var divy = $('denviarlink').clientHeight;
        var x = pantallax/2 - divx/2;
        // si ha scroll incrementem la y
        if (document.documentElement.scrollTop > 0)
        	var y = (pantallay/2 - divy/2) + document.documentElement.scrollTop;
        else
        	var y = pantallay/2 - divy/2;
       $('denviarlink').style.left = x + 'px';
       $('denviarlink').style.top = y + 'px';       
       $('nombre_amigo').focus();
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function esconde_enviar_link(){
    try{
    	desgriseja(); 
        $('denviarlink').style.display = 'none';             
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function enviar_link_amigo(){
    try{
    	if(Ajax.activeRequestCount==0){
	    	var entrar=1;
	    	if($('nombre_amigo').value==''){
	    		$('nombre_amigo').className='text_llarg_requerit';
	    		entrar=0;
	    	}
	    	if($('email_amigo').value==''){
	    		$('email_amigo').className='text_llarg_requerit';
	    		entrar=0;
	    	}
	
	    	if(entrar==1){	   
	    		params="accio=10&tipo=" + tipo_enviar_link + "&amigo=" + $('nombre_amigo').value + "&email=" + $('email_amigo').value + "&id=" + id;
	    		new Ajax.Request ('accions', { parameters: params, onComplete: resp_enviar_link_amigo});
	    	}
    }
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_enviar_link_amigo(resp){
    try{
    	esconde_enviar_link();
		if(resp.responseText!='ok')
			mostra_error(resp.responseText);
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function mostra_recordar_contrasena(){
	try{
		// posem les textbox sense vermell    	
	    $('email').className='text_llarg';
    	$('email').value='';
    	$('text_error_email').style.display = 'none';
    	griseja(); 
        $('drecordar_contrasena').style.display = 'block'; 
        var pantallax = document.documentElement.clientWidth;
        var pantallay = document.documentElement.clientHeight; 
        var divx = $('drecordar_contrasena').clientWidth;
        var divy = $('drecordar_contrasena').clientHeight;
        var x = pantallax/2 - divx/2;
        // si ha scroll incrementem la y
        if (document.documentElement.scrollTop > 0)
        	var y = (pantallay/2 - divy/2) + document.documentElement.scrollTop;
        else
        	var y = pantallay/2 - divy/2;
       $('drecordar_contrasena').style.left = x + 'px';
       $('drecordar_contrasena').style.top = y + 'px';
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function esconde_recordar_contrasena(){
    try{
    	desgriseja(); 
        $('drecordar_contrasena').style.display = 'none';             
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function enviar_contrasena(){
    try{    	
    	if(Ajax.activeRequestCount==0){
	    	var entrar=1;
	    	if($('email').value==''){
	    		$('email').className='text_llarg_requerit';
	    		$('text_error_email').style.display = 'block';
	    		entrar=0;
	    	}
  		
    		if(($('email').value.indexOf('@')==-1)||($('email').value.indexOf('.')==-1)){	    		
    			$('email').className='text_llarg_requerit';
    			$('text_error_email').style.display = 'block';
    			entrar=0;
    		}
	
	    	if(entrar==1){	 
	    		$('text_error_email').style.display = 'none';  
	    		params="accio=11&email=" + $('email').value;
	    		new Ajax.Request ('accions', { parameters: params, onComplete: resp_recordar_contrasena});
	    	}
    }
    }catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

function resp_recordar_contrasena(resp){
    try{
    	esconde_recordar_contrasena();
		if(resp.responseText!='ok')
			mostra_error('La direcci&oacute;n introducida no coincide con ning&uacute;n cliente registrado en Brand Boulevard.<br /> Por favor, rev&iacute;salo o ponte en contacto con nosotros en gestiones@brandboulevatrd.es<br />Gracias');
    }
    catch(e){
        mostra_error('Error JavaScript: ' + e.message);
    }
}

