// JavaScript Document

/*************************************************************
	Objetivo: Cambiar de solapa
	Entrada:
		- p_referenciaGeneral: Referencia general de las solapas.
		- p_id: identificador de la solapa.
*************************************************************/
var v_g_eventoMouse = false;	
function fTabs_cambiarSolapa(p_referenciaGeneral, p_id)
{	
	var	v_longitud = p_referenciaGeneral.length;
	coll = $$('div[id^=tabh_'+p_referenciaGeneral+']');

	coll.each(function(item) {
	
		if(item.id.substr(0,v_longitud + 5)=='tabh_'+p_referenciaGeneral)
		{
			if(item.id == 'tabh_'+p_referenciaGeneral+p_id)
			{
				item.className='tabs_solapa_elegida';
			}
			else
			{
				item.className='tabs_solapa_noelegida';
			}
		}
	});
	
	coll = $$('div[id^=tabconth_'+p_referenciaGeneral+']');

	coll.each(function(item) {

		if(item.id.substr(0,v_longitud + 9)=='tabconth_'+p_referenciaGeneral)
		{
			if(item.id == 'tabconth_'+p_referenciaGeneral+p_id)
			{
				item.show();
			}
			else
			{
				item.hide();
			}
		}
	});

	// Ajustamos la altura de los posibles iframes.
	ajustarHijos();	
}
/*************************************************************
	Objetivo: mover las solapas 
	Entrada:
		- p_idCapaMover: la capa que se va a mover.
		- p_direccion: dirección = izq o der.
*************************************************************/

function fTabs_moverSolapa(p_idCapaMover, p_direccion, p_idBoton, p_idCapaContenido)
{
	
	var v_capaMover 	= $(p_idCapaMover);
	
	var v_posicionIzq 	= $(p_idCapaMover).getStyle('left'); 
	v_posicionIzq 		= v_posicionIzq.substr(0, v_posicionIzq.length-2);
	v_posicionIzq 		= parseInt(v_posicionIzq); 
	
	var v_anchoTotal 		= fTabs_getAnchoTotalSolapas(p_idCapaMover);
	var v_anchoContenedor 	= $(p_idCapaContenido).getWidth();
	var v_sobrante 			= v_anchoContenedor - v_anchoTotal;

	
		if(p_direccion == 'izq'  )
		{
			var v_efecto = new Effect.Move(v_capaMover, { 	x: 600, y: 0, mode:	'relative', duration: 1, afterUpdate:function(){
						var v_posicionIzq = $(p_idCapaMover).getStyle('left'); 
						v_posicionIzq = v_posicionIzq.substr(0, v_posicionIzq.length-2);
						v_posicionIzq = parseInt(v_posicionIzq);
						if(v_posicionIzq > 0 )
						{
							$(p_idCapaMover).style.left = '0px';
							 v_efecto.cancel();
						}									
			}});
		}
		else
		{
		
				
				var v_efecto = new Effect.Move(v_capaMover, { x: -600, y: 0, mode:'relative', duration: 1, afterUpdate: function(){
						
						
						var v_sobrante			= v_anchoContenedor-v_anchoTotal;
						var v_posicionIzqAct 	= $(p_idCapaMover).getStyle('left'); 
						if(v_posicionIzqAct == '')
							v_posicionIzqAct = '0px';
						v_posicionIzqAct 		= v_posicionIzqAct.substr(0, (v_posicionIzqAct.length-2));
						v_posicionIzqAct 		= parseInt(v_posicionIzqAct);
												
						if(v_posicionIzqAct < v_sobrante)
						{
							$(p_idCapaMover).style.left = v_sobrante+'px';
							v_efecto.cancel();
						}	
				}});
		
			
		}
	
		if(v_efecto)
			Event.observe(p_idBoton, 'mouseout', function (){v_efecto.cancel();   });

}

function fTabs_getAnchoTotalSolapas(p_idCapaContenedor)
{

	var v_anchoTotal = 0;
	var v_a_solapas = $(p_idCapaContenedor).getElementsBySelector('li');
	v_a_solapas.each(function(v_elemento){
	
		var v_idSolapa 		= $(v_elemento).id;
		var v_anchoSolapa = $(v_idSolapa).getWidth();
	
		var v_margenDerSolapa 	= $(v_idSolapa).getStyle('margin-right');
		v_margenDerSolapa 		= v_margenDerSolapa.substr(0,v_margenDerSolapa.length-2);
		v_margenDerSolapa		= parseInt(v_margenDerSolapa);
		
		var v_margenIzqSolapa 	= $(v_idSolapa).getStyle('margin-left');
		v_margenIzqSolapa 		= v_margenIzqSolapa.substr(0,v_margenIzqSolapa.length-2);
		v_margenIzqSolapa		= parseInt(v_margenIzqSolapa);
		
		
			
		v_anchoTotal+= v_anchoSolapa + v_margenDerSolapa + v_margenIzqSolapa;
	});	

	return parseInt(v_anchoTotal);
}