// Cuando el documento este preparado...
var txtTpos = "", txtTposDetalle = "";
var timeInicio = new Date(),time1;
var tpoCarga = 0;
var tpoProceso = 0;
var idTraza = null;
var sacar_tpos = false;
var init_cont=0;
var $capa;
mostrar_tiempos = function(){
	if ( cogerValorParametroDeUrl( 'PNBDCT' ) == 'S' ) {
		if( document.getElementById('logoNorbolsa') != null )
			document.getElementById('logoNorbolsa').title = txtTposDetalle;
		if ( sacar_tpos )
			avisar(txtTpos + "\n\n"+ txtTposDetalle);
	}
}
on_load = function(){
	txtTpos += "\n\n tpo. document load: "+ (new Date() - timeInicio) +" ms.";
	timeInicio = new Date();
	init_cont ++;
	if ( init_cont == 2 )
		mostrar_tiempos();
}
var isRendmientoBajo = false;

$(document).ready(function(){
	calculo_tpo_indicador_calidad();
	txtTposDetalle += "\n tpo. transicion de pagina: "+ tpoCarga +" ms.";
	
	txtTpos += "\n\n tpo. document inicio ready: "+ (new Date() - timeInicio) +" ms.";
	timeInicio = new Date();
	
	time1 = new Date();
	tooltips();
	isRendimientoBajo = (new Date() - time1) > 150;
	txtTposDetalle += "\n tpo. tooltips: "+ (new Date() - time1) +" ms.";time1 = new Date();
	if ( isRendimientoBajo )
		txtTposDetalle +="Rendimiento Js bajo!!!";

	if ( !isRendimientoBajo && typeof init_entidad_inicio != 'undefined' )
		init_entidad_inicio();
	init_comun();
	if ( !isRendimientoBajo && typeof init_entidad_fin != 'undefined' )
		init_entidad_fin();
	txtTpos += "\n\n tpo. document ready: "+ (new Date() - timeInicio) +" ms.";
	timeInicio = new Date();
	
	init_cont ++;
	if ( init_cont == 2 )
		mostrar_tiempos();
});
window.onbeforeunload = function(){
	set_tpo_indicador_calidad_total_cliente();
};
window.onunload = function(){
	set_tpo_indicador_calidad_proceso_pag();
};
window.onresize = function(){
	onresize_entidad();
};
function init_comun() {
	if ( !isRendimientoBajo ) {
		ocultar_mostrar_zonas();
		txtTposDetalle += "\n tpo. ocultar: "+ (new Date() - time1) +" ms.";time1 = new Date();
		pestanas();
		txtTposDetalle += "\n tpo. pestanas: "+ (new Date() - time1) +" ms.";time1 = new Date();
		enlaces();
		txtTposDetalle += "\n tpo. enlaces: "+ (new Date() - time1) +" ms.";time1 = new Date();
		arreglos_paginas_comunes();
		txtTposDetalle += "\n tpo. arreglos pags comun: "+ (new Date() - time1) +" ms.";time1 = new Date();
		romper_primera_columna();
		txtTposDetalle += "\n tpo. romper 1 col: "+ (new Date() - time1) +" ms.";time1 = new Date();
		tratar_checkbox();
		txtTposDetalle += "\n tpo. tratar checkboxs: "+ (new Date() - time1) +" ms.";time1 = new Date();
		arreglos_navegadores();
		txtTposDetalle += "\n tpo. arreglos navegadores: "+ (new Date() - time1) +" ms.";time1 = new Date();
		ordenacion_tablas();
		txtTposDetalle += "\n tpo. ordenacion tablas: "+ (new Date() - time1) +" ms.";time1 = new Date();
		limpiar_formularios();
		txtTposDetalle += "\n tpo. lipiar forms: "+ (new Date() - time1) +" ms.";time1 = new Date();
		tamanoLetra();
	}
	marcar_indicadores();
}
// Cuando se carguen datos por ajax, debemos de volver a procesar algunas cosas
function arreglos_cargas_dinamicos( capa_nueva ) {
	$capa_nueva = ( capa_nueva ) ? $(capa_nueva):null;
	if ( typeof init_entidad_fin != 'undefined' )
		init_entidad_fin( $capa_nueva );
	enlaces( $capa_nueva );
	ocultar_mostrar_zonas( $capa_nueva );
	romper_primera_columna($capa_nueva);
	pestanas($capa_nueva);
	arreglos_paginas_comunes($capa_nueva);
	arreglo_sesion_ajax($capa_nueva);
	arreglo_eval_ajax( $capa_nueva );
}
function arreglo_eval_ajax( $capa_nueva ){
	if ( $capa_nueva ) {
		$("script",$capa_nueva).each(function(){
			eval(this.text);
		});
	}
}
function arreglo_sesion_ajax($capa_nueva ) {
	var $sesionInvalida = $("#sesion-invalida",$capa_nueva);
	if ($sesionInvalida.length > 0) {
		document.location.reload();
	}
}
// Ocultar Pestañas, ... Cuando si no tiene javascript tienen que salir 
// y si sí tiene se activan de alguna forma
function ocultar_mostrar_zonas( $capa ) {
	$elementos = ( $capa ) ? $('.ocultar',$capa) : $('.ocultar');
	if($elementos.length > 0)
		$elementos.addClass("oculto");

	$elementos = ( $capa ) ? $('.desocultar',$capa) : $('.desocultar');
	if($elementos.length > 0)
		$elementos.removeClass("desocultar").removeClass("oculto");

	$elementos = ( $capa ) ? $('.seleccionar',$capa) : $('.seleccionar');
	if($elementos.length > 0)
		$elementos.removeClass("seleccionar").addClass("sel");
	
	// mostrar en la propia pagina aquellos ocultos con clase mi id
	$elementos = ( $capa ) ? $('.mostrar',$capa) : $('.mostrar');
	if($elementos.length > 0){
		$elementos.each( function () {
			set_evento( this, "click", function() { return mostrar_capas( this.getAttribute("id") ); } );
		} );
	}
}
function mostrar_capas( clase ){
	$elementos = $('.'+clase);
	if($elementos.length>0){
		$elementos.removeClass("oculto");
	}
	return false;
}

function calendario_seleccionar(){
	var $elementos = $(".diaMarcado");
	if($elementos.length>0){
		$elementos.each( function () {
			set_evento( this, "click", function() {
				var $elementos2 = $(".diaSeleccionado");
				if($elementos2.length>0)
					$elementos2.removeClass("diaSeleccionado");
				$(this).addClass("diaSeleccionado");
				// Lanzo el click de su hijo
				$("a",$(this)).click();
			 } );
		} );
	}
}


// Funcionamientos de pestanas
function pestanas($capa_contexto) {
	$elementos = $('ul.desplegarDestinos',$capa_contexto);	
	if ($elementos.length>0){
		$elementos.each(function(){
			$('li a[rev]', this).click( function() { cambio_pestanas( this ); return false; } );
		});
		$elementos.removeClass('desplegarDestinos');
	}
}
// Cambio de pestaña activa
function cambio_pestanas( enlace ){	
	var capa, capaHermano;
	$enlace = $(enlace);
	var es_de_ajax = $enlace.hasClass('ajax');
	$pestana = $enlace.parents('li');
	if(!$pestana.hasClass('sel')){
		$pestana.siblings('li').removeClass('sel').each(function(){
			if ( !es_de_ajax ) {
				capaHermano = $('a',this).attr('rev');
				$('#'+capaHermano).addClass('oculto');
			}
		});
		$pestana.addClass('sel');
		if ( !es_de_ajax ) {
			var es_de_imagen = $enlace.hasClass('imagen');
			capa = document.getElementById( $enlace.attr('rev') );
			if ( capa != null ) {
				$(capa).removeClass('oculto');
				if ( es_de_imagen )
					$(capa).attr('src',enlace.getAttribute("rel"));
			} else {
				//Por si acaso el rev esta mal puesto
				location.href=$enlace.attr('href');
			}
		} else {
			carga_enlace_tipo_ajax ( enlace );
			//location.href=enlace+'&test=1';
		}
	}
	return false;
}
// Cambios de enlaces de Ajax para mejorar comportamientos
function enlaces( $capa ){
	var $anadirSeccion = $("#seccionesFavoritasFondo");
	if( $anadirSeccion.length > 0 )
		if ( !$anadirSeccion.hasClass("ampliable") )
			$("#anadirSeccion").addClass("oculto");
		else
			$("#anadirSeccion").removeClass("oculto");
	
	var $elementos = $("a.norb-ajax");
	if($elementos.length>0){
		$elementos.each( function () {
			set_evento( this, "click", function() { return carga_enlace_tipo_ajax( this ) } );
		} );
		$elementos.removeClass("norb-ajax").addClass("clickeable");
	}
}
// Cambios de enlaces de Ajax para mejorar comportamientos
function carga_enlace_tipo_ajax( enlace ) {	
	url = enlace.getAttribute("rel");
	enlace.removeAttribute("href");
	capa = enlace.getAttribute("rev");
	if ( capa != null && url != null && capa != '' && url != '' ) {
		return carga_url_en_capa(url, capa, null, null, true);
	} else {
		return true;
	}
}
function carga_enlace_tipo_no_ajax ( enlace, capa ) {	
	url = enlace.getAttribute("href");
	if ( url != null && url != '' && url.charAt(url.length) != '#' ) {
		enlace.removeAttribute("href");
		if ( capa == 'undefined' || capa == '' )
			capa = enlace.getAttribute("rev");

		if ( capa != null && url != null && capa != '' && url != '' ) {
			return carga_url_en_capa(url, capa);
		} else {
			return true;
		}
	} else {
		return false;
	}
}
function carga_url_en_capa( url_ajax, id_obj_sust, parametros, callback, cargando ){
	var obj_sust = document.getElementById( id_obj_sust );
	carga_url_en_obj( url_ajax, obj_sust, parametros, callback, cargando );
}
function carga_url_en_obj( url_ajax, obj_sust, parametros, callback, cargando ){
	if ( obj_sust != null && obj_sust != 'undefined' ) {
		if( cargando )
			marcar_cargando_ajax( obj_sust );		
		$.ajax({
			url: url_ajax+"&PNBAJX=S"+(parametros?parametros:""),
 			success: function(html){
 				if( obj_sust.tagName == "INPUT" )
 					obj_sust.value = $.trim(html);
 				else
 					obj_sust.innerHTML = $.trim(html);
 				arreglos_cargas_dinamicos(obj_sust);
 				if( callback )
 					callback( html, obj_sust );
 			}
		});
		return false;
	} else {
		return true;
	}
}

function carga_url_en_input_text( url_ajax, obj_sust, parametros, callback, cargando ){
	if ( obj_sust != null && obj_sust != 'undefined' ) {
		if( cargando )
			marcar_cargando_ajax( obj_sust );		
		$.ajax({
			url: url_ajax+"&PNBAJX=S"+(parametros?parametros:""),
 			success: function(html){
 				obj_sust.value = $.trim(html);
 				arreglos_cargas_dinamicos(obj_sust);
 				if( callback )
 					callback(html,obj_sust);
 			}
		});
		return false;
	} else {
		return true;
	}
}

function carga_url_en_input_select( url_ajax, obj_sust, parametros, callback, cargando ){
	if ( obj_sust != null && obj_sust != 'undefined' ) {
		if( cargando )
			marcar_cargando_ajax( obj_sust );
		$.ajax({
			url: url_ajax+"&PNBAJX=S"+(parametros?parametros:""),
 			success: function(html){
 				var objPadre = obj_sust.parentNode;
 				var tagSelect = objPadre.innerHTML.substring( 0, objPadre.innerHTML.indexOf(">") + 1 );
 				objPadre.innerHTML = tagSelect + $.trim(html) +"</select>";
 				arreglos_cargas_dinamicos(objPadre);
 				if( callback ){
 					var objSelectNuevo = $("select:first",objPadre)[0];
 					callback( html, objSelectNuevo );
 				}
 			}
		});
		return false;
	} else {
		return true;
	}
}


// Marcar cargando datos ajax
function ajustar_mensaje_ajax(capa,offsetw,offseth) {
 	var cargador = $(".cargador",capa)
 	if ( cargador )  {
		var w = offsetw;
		if (!w)
			w = ($(capa).length > 0 && $(capa)[0].offsetWidth?$(capa).width():0);
		var h = offseth;
		if (!h)
			h = ($(capa).length > 0 && $(capa)[0].offsetHeight?$(capa).height():0);
		
		//var left = ( w  - $(".cargador",capa).width() ) /2;	
		var top =  ( h  - $(".cargador",capa).height() ) /2;
		cargador.css("margin-top",top);	
		//cargador.css("margin-left",left);
		
		//cargador.css("top",-1 * h);
	 	var fcargador = $(".cargadorFondo",capa)
	 	if ( fcargador ) {
		 //	fcargador.width( w );
		 	fcargador.height( h );
	 	}
	} 	
}

function marcar_cargando_ajax( capa ){
 	mensaje_ajax(capa, TID_CARGANDO);
}
function borrar_mensaje_ajax(capa) {
	$(".cargadorFondo",capa).remove();
	$(".cargadorRelleno",capa).remove();
	$(".cargador",capa).remove();
}
function mensaje_ajax( capa, mensaje ){
	borrar_mensaje_ajax(capa);
	var relleno = '<div class="cargadorRelleno"></div>';
 	//var html  = '<div class="cargadorFondo" style="position:absolute;"></div><div class="cargador"  style="position:absolute;width:10em;"> <div class="cargadorContenido">'+mensaje+'</div></div><div class="clear"></div>';
	var html  = '<div style="position:relative"><div class="cargadorFondo" style="display:block;height:73px;position:absolute;width:100%"></div><div class="cargador"  style="position:absolute;width:40%;left:30%;"> <div class="cargadorContenido redondear2"><div class="mensajeCargador">'+mensaje+'</div></div></div><div class="clear"></div></div>';
	
 	var capaHtml = $.trim($(capa).html());
	if ( capaHtml ) {
	} else {
	 	$(capa).prepend(relleno);
	}
 	$(capa).prepend(html);
 	redondear2($(".cargador .redondear2"),false);
 	ajustar_mensaje_ajax(capa);
}
// Ordenacion de tablas
function ordenacion_tablas() {
	$('table.sortable').each(function() {
		var $tabla = $(this);
		$('th', $tabla).each(function(columna) {
			var fn_ordenacion = funcion_ordenacion( this );
			// Si se ha defindo la ordenacion, asignarla al click
			if (fn_ordenacion) {
//				$(this)
//				.addClass('clickable')
//				.hover(
//					function() { $(this).addClass('hover'); }, 
//					function() { $(this).removeClass('hover'); } )
//				$(this).click(
//					function() { ordenacion_tabla_por_columna( $tabla, columna, this, fn_ordenacion ); }
//				)
//				;
				$(this).data("columna",columna)
				$(this).data("fn_ordenacion",fn_ordenacion)
				set_evento( this, "click",
						  //function() {ordenacion_tabla_por_columna( $tabla, columna, this, fn_ordenacion ); }
						eventoOrdenacion
					);
			}
		});
	});
}
function eventoOrdenacion() {
	var $tabla = $($(this).parents("table")[0]);
	var columna = $(this).data("columna");
	var fn_ordenacion = $(this).data("fn_ordenacion");
	ordenacion_tabla_por_columna( $tabla, columna, this, fn_ordenacion ); 
	
}
function set_evento( element, tipo_evento, handleEvent ){
	if ( element != null) {
		var tipo_evento_alt = get_evento_alt( tipo_evento );
		if ( tipo_evento != null )		
			element["on" + tipo_evento] = handleEvent;
		if ( tipo_evento_alt != null )
			element["on" + tipo_evento_alt] = handleEvent;
	}
}
function add_evento( element, tipo_evento, newHandleEvent ){
	var tipo_evento_alt = get_evento_alt( tipo_evento );
	var handleEvent = null;
	if( tipo_evento != null ){
		var $elem = $(element);
		$elem.bind( tipo_evento, newHandleEvent );	
	}
}
function get_evento_alt( tipo_evento ){
	tipo_evento_alt=null;
	if ( tipo_evento == 'click' )
		tipo_evento_alt = 'keypress';
	if ( tipo_evento == 'mousedown' )
		tipo_evento_alt = 'keydown';
	if ( tipo_evento == 'mouseup' )
		tipo_evento_alt = 'keyup';
	return tipo_evento_alt;
}

function es_link_procesado( enlace ) {
	tipo_evento = "click";
	return (enlace["on" + tipo_evento] != null);
}
// definir la funcion de que da el valor de la ordenacion si es que es columna ordenable
function funcion_ordenacion( cabecera ) {
	var fn_ordenacion;
	if ($(cabecera).is('.sort-alpha')) {
		fn_ordenacion = function($cell) {
			return $cell.find('.sort-key').text().toUpperCase() + ' ' +
			$cell.text().toUpperCase();
		};
	}
	else if ($(cabecera).is('.sort-numeric')) {
		fn_ordenacion = function($cell) {
			var key = parseFloat($cell.text().replace(/\./g,"").replace(",",".").replace(/%/g,""));
			return isNaN(key) ? 0 : key;
		};
	}
	else if ($(cabecera).is('.sort-date')) {
		fn_ordenacion = function($cell) {
			return Date.parse('1 ' + $cell.text());
		};
	}
	return fn_ordenacion;
}
// Ordenacion de una tabla por una columna
function ordenacion_tabla_por_columna( $tabla, columna, cabecera, funcionOrdenacion ) {
	var newDirection = 1;
	if ($(cabecera).is('.sorted-asc')) {
		newDirection = -1;
	}
	var rows = $tabla.find('tbody > tr').get();
	$.each(rows, function(index, row) {
		row.sortKey = funcionOrdenacion($(row).children().eq(columna));
	});
	rows.sort(function(a, b) {
		if (a.sortKey < b.sortKey) return -newDirection;
		if (a.sortKey > b.sortKey) return newDirection;
		return 0;
	});
	$.each(rows, function(index, row) {
		$tabla.children('tbody').append(row);
		row.sortKey = null;
	});
	$tabla.find('th').removeClass('sorted-asc').removeClass('sorted-desc');
	$tabla.find('th a img').attr('src',dirImgs+"ico_ordenar.png");
	var $sortHead = $tabla.find('th').filter(':nth-child(' + (columna + 1) + ')');
	if (newDirection == 1) {
		$sortHead.addClass('sorted-asc');
		$('img',$sortHead).attr('src',dirImgs+"ico_ordenado.png");
	} else {
		$sortHead.addClass('sorted-desc');
		$('img',$sortHead).attr('src',dirImgs+"ico_ordenar.png");
	}
	$tabla.find('td').removeClass('sorted').filter(':nth-child(' + (columna + 1) + ')').addClass('sorted');
	alternarEstiloFilas($tabla);
	return false;
}

// Alternar estilos de columnas
function alternarEstiloFilas( $tabla ) {
	var numfila = 0;
	$('tbody tr', $tabla).each( function () { 
		if ( numfila++ % 2 == 0 )
			$(this).removeClass('impar').addClass('par');
		else
			$(this).removeClass('par').addClass('impar'); 
	} );
};

// Tooltips
function tooltips(){	
	$elementos = $(".tooltip");
	if($elementos.length>0){
		xOffset = 10; yOffset = 20;
		$elementos.hover(function(e){											  
				this.t = this.title;
				this.title = "";
				if ( this.t == '') {
					this.t = this.alt;
					this.alt = "";
				}
				$("body").append("<p id='tooltip'>"+ this.t +"</p>");
				$("#tooltip")
					.css("top",(e.pageY - xOffset) + "px")
					.css("left",(e.pageX + yOffset) + "px")
					.fadeIn("fast");		
	    	},
			function(){
				this.title = this.t;		
				$("#tooltip").remove();
	    	});	
		$elementos.mousemove(function(e){
			$("#tooltip")
				.css("top",(e.pageY - xOffset) + "px")
				.css("left",(e.pageX + yOffset) + "px");
		});
	}
}

//Campos de formualarios elegantes
function tratar_checkbox () {
	$elementos = $(".checkboxA");
	if($elementos.length>0){
		$elementos.addClass("desplazado");
		$elementos.each( function () {
			set_evento( this, "click", function() {	
				var campoParaLabel = find_label_campo_form(this.getAttribute('id'));
				if ( campoParaLabel != null ) {
					var $idCampoParaLabel = $("#"+campoParaLabel.id);
					if ( $idCampoParaLabel.hasClass("checked")) 
						$idCampoParaLabel.addClass("unchecked").removeClass("checked");
					else
						$idCampoParaLabel.addClass("checked").removeClass("unchecked");
				}
			});
		});
	}
}
function find_label_campo_form( idCampoParaLabel ){
	var arrLabels = document.getElementsByTagName('label');
	for (var i=0; i<arrLabels.length; i++) {
		if (arrLabels[i].getAttributeNode('for') && arrLabels[i].getAttributeNode('for').value == idCampoParaLabel)				
			return arrLabels[i];
	}
	return null;
}

// Romper por primera columna
function romper_primera_columna($capa_contexto) {
	//ocultamos las celdas si se repite la cabecera anterior
	$elementos = $("table.romper_col_1",$capa_contexto);
	if($elementos.length>0){
		$elementos.each(function(){
			dato1 = "";
			elem = null;
			$('tr',this).each(function(){
				elem = $("td:first",this);
				if (elem.text() == dato1 ){
					elem.text('');
				} else {
					if ( elem.text() != '' )
						dato1 = elem.text();
				}
			})
		});
	}
}
// Arreglos para distintas paginas comunes a las cajas
function arreglos_paginas_comunes($capa_contexto) {
	
	if ( $(".lightbox", $capa_contexto).length > 0 ) {
		loadCSS ( dirHTML_Comun + "jquery.lightbox-0.5.css", null );
		loadJS ( dirJS_Comun + "jquery.lightbox-0.5.pack.js", ampliacion_imagenes );	
	} 
	if ( idOperacion == "ANAHOM00" || idOperacion == "VALANF00" ) {
		consenso_termometro($capa_contexto);
	}
	if ( idOperacion == "ANAEMP00" || idOperacion == "VALEMP00" || idOperacion == "ANAHOM00") {
		set_evento( $("#sel_valor_docs",$capa_contexto)[0], "change", function() { 
			$elementoSelect = $("#sel_valor_docs")[0];
			if ( $elementoSelect.value != "" )
				$("#form_sel_valor_docs").submit();
		} ); 
		//set_evento( document.getElementById("sel_indice_AT"), "change", function() {document.getElementById("form_sel_indice_AT").submit()} ); 
	}
	if( idOperacion == "ANAHOM00" ){
		var $elementos = $(".norb-ajax-select",$capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each(function(){
				set_evento( this, "change", function(){
					var urlBase = this.getAttribute("rev") + this.options[this.selectedIndex].value;
					var objDestino = document.getElementById(this.getAttribute("rel"));
					carga_url_en_obj( urlBase, objDestino, null, null, true );
				} );
			});
		}
	}
	
	set_evento( $("#sel_seccion", $capa_contexto)[0], "change", function() {
			theForm = $("#form_sel_seccion")[0];
			if ( theForm != null ) {
				url = theForm.sel_seccion.value;
				if ( url != null && url != '' )
					document.location = url;
			}
		}
	);
	
	if ( idOperacion == "CARLIS00" || idOperacion == "CARBOR00" ) {
		var enlaceOpcCartera = null;		
		set_evento( $("#alta_carteras", $capa_contexto)[0], "submit", function() {return validarAltaCartera($("#alta_carteras")[0]);} );
		for(k=0;k<3;k++){
			enlaceOpcCartera = $("#enlaceOpeCar_"+k, $capa_contexto );
			if (enlaceOpcCartera != null){
				set_evento( enlaceOpcCartera, "click", function() {
					$("#form_"+this.id)[0].submit();
				} );		
			}
		}
			
		
	}
	
	if( idOperacion == "ATCTAR00"  ||  idOperacion.indexOf("BRK") != -1 ){
		var $tablas = $(".filasAlternas", $capa_contexto);
		if( $tablas.length > 0 ){
			$tablas.each( function(){
				alternarEstiloFilas( this );
			});
		}
	}
	
	if (idOperacion == "CARRES00" || idOperacion == "CARSIT00"){
		set_evento ( $("#formCambiarFechas", $capa_contexto )[0], "submit", function(){return validarSeleccionFecha($("#formCambiarFechas" )[0]);})
	}
	
	if (idOperacion == "CARMOV00" || idOperacion == "CARDIV00"){
		set_evento ( $("#formCambiarFechas", $capa_contexto )[0], "submit", function(){return validarSeleccionFechas($("#formCambiarFechas" )[0]);})		
	}	
	
	if (idOperacion == "CARNMO00" || idOperacion == "CARNMO01"){
		set_evento ( $("#formNuevoMov", $capa_contexto)[0], "submit", function(){return (validarSeleccionFecha($("#formNuevoMov")[0]) && validarAltaMovimiento($("#formNuevoMov")[0]));})
	}
	
	if ( $("input.textFecha", $capa_contexto).length > 0 ){				
		loadJS ( dirJS_Comun + "datepicker.js", function() {
			if( _IDIOMA != 'en' ) {
				loadJS ( dirJS_Comun + "i18n/ui.datepicker-"+ _IDIOMA +".js", calendarios  );
			} else {
				calendarios();
			}
		});
		loadCSS ( dirHTML_Comun + "jquery-ui-themeroller.css", null );
	}

	if ( $("a.media", $capa_contexto).length > 0 ){
		loadJS ( dirJS_Comun + "jquery.media.js", function() {
			$.fn.media.defaults.flvPlayer = dirSWF_Comun+ "mediaplayer.swf";
			$.fn.media.defaults.mp3Player = dirSWF_Comun+ "mediaplayer.swf";
			$.fn.media.defaults.players.flash.oAttrs.codebase = 'https://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + $.fn.media.defaults.flashVersion;
			$.fn.media.defaults.autoplay = 1; 		
		    $('a.media').media( { width: "100%", height: 18 } );
		});
		
	}
	
	if( idOperacion == "NTFNAL11" || idOperacion == "NTFNAL11V" ||
		idOperacion == "ALTNAL11" || idOperacion == "ALTNAL11V" || 
		idOperacion == "BORNPO11" || idOperacion == "BORNPO11V" 
			){
		var $elementos = $(".listaMercadosCambiaValores", $capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				set_evento( this, "change", function() {
					var $botCondEspeciales = $("#PNBKY2");
					if( $botCondEspeciales.length > 0 ){
						if( this.options[this.selectedIndex].value == 'MC' )
							$botCondEspeciales.removeClass("oculto");
						else
							$botCondEspeciales.addClass("oculto");
					}

					if( this.selectedIndex < 0 )
						return true;
					else 
						return cambiarValores( this, this.options[this.selectedIndex].value );
				} );
			} );
		}
	}
	
	if( idOperacion == "BORNPO11" || idOperacion == "BORNPO11V"	){
			var $elementos = $("#formularioOrden", $capa_contexto);
			if( $elementos.length == 1 ){
				set_evento( $elementos[0].PNBPRE, "change", function() {
					if ( this.value != '' ) {
						var $elementos = $("#formularioOrden");
						if( $elementos.length == 1 ) {
							theForm = $elementos[0];
							for ( i=0; i < $elementos[0].PNBTOR.length ;i++ )
								theForm.PNBTOR[i].checked = theForm.PNBTOR[i].value == '00';
						}
					}
				} );
			}
		}
	if( idOperacion == "PREHST01" 
				){
			var $elementos = $(".listaMercadosCambiaValores", $capa_contexto);
			if( $elementos.length > 0 ){
				$elementos.each( function () {
					set_evento( this, "change", function() {
						var $botCondEspeciales = $("#PNBKY2");
						if( $botCondEspeciales.length > 0 ){
							if( this.options[this.selectedIndex].value == 'MC' )
								$botCondEspeciales.removeClass("oculto");
							else
								$botCondEspeciales.addClass("oculto");
						}

						if( this.selectedIndex < 0 )
							return true;
						else 
							return cambiarValores( this, this.options[this.selectedIndex].value );
					} );
				} );
			}
			
			set_evento ( $("#formularioPrecioHistorico", $capa_contexto )[0], "submit", function(){return(validarSeleccionFechas($("#formularioPrecioHistorico" )[0],RANGO_FECHAS_EN_MESES,RANGO_MAXIMO_MESES));})
		}

	if( idOperacion == "MAPWEB00" ){
		var $elementos = $(".menuMapaweb", $capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				this.removeAttribute("href");
				set_evento( this, "click", function() {
					var $capas = $(".capaMenuweb");
					if( $capas.length > 0 ){
						$capas.each( function(){
							$(this).addClass("oculto");
						} );
					}
					var capaSelec = $("#"+this.getAttribute("rel"));
					$(capaSelec).removeClass("oculto");
				} );
			} );
		}
	}
	
	if( idOperacion == "ALTNAL11" || idOperacion == "ALTNAL11V" || idOperacion == "PREHST01" ){
		var $elementos = $(".listaCambiaPrecio", $capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				set_evento( this, "change", function() { 
					if( this.selectedIndex < 0 )
						return true;  
					else 
						return cambiarPrecioReferenciaUltimo( this, this.options[this.selectedIndex], null );
				} );
				if ( $(this).hasClass("inicializarPrecio") )
					cambiarPrecioReferenciaUltimo( this, this.options[this.selectedIndex], null );
			} );
		}
		
		var $elem_radio = $(".valor_o_indice", $capa_contexto);
		if( $elem_radio.length > 0 ){
			$elem_radio.each( function () {
				set_evento( this, "click", function() { cambiaValorIndice( this )} );
			} );
		}
		
		var $elem_radio = $(".precio_o_porcentaje", $capa_contexto);
		if( $elem_radio.length > 0 ){
			$elem_radio.each( function () {
				set_evento( this, "click", function() { cambiaPrecioPorcentaje( this )} );
			} );
		}

	}
	
	if ( idOperacion == "VALANT02" ) {
		$elementos = $("a.selector_capa", $capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				set_evento( this, "click", function() { return mostrar_li( this.getAttribute("rev") )} );
			} );
		}
	}
	
	if ( idOperacion == "GENHOM10" || idOperacion == "GENHOM11" || idOperacion == "ANAHOM00" ) {
		calendario_seleccionar();
	}
	if ( idOperacion == "BCAPMN00" || idOperacion == "BCAPME00" 
		|| idOperacion == "BCAMON00" || idOperacion == "BCAMOE00" 
		|| idOperacion == "BCARNN00" || idOperacion == "BCARNE00" ) {
		var $form = $(".divCambiarFecha form");
		if( $form.length == 1 ){
			set_evento( $form[0], "submit", function() {
				if( !validarSeleccionFechas( this, 'M', 12 ) )
					return false;
			} );
		}
	}
	
	if( idOperacion.indexOf("BCA") == 0 || idOperacion.indexOf("USR") == 0 || idOperacion.indexOf("BOR") == 0 || idOperacion.indexOf("BOP") == 0 || idOperacion.indexOf("BRK") == 0 ){
		var $elementos = $(".changeSubmit", $capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				set_evento( this, "change", function() { this.form.submit(); } );
			} );
		}
	}
	
	if( idOperacion == "BCASGC00" ) {
		var $elementos = $("#formSituacion", $capa_contexto);
		if( $elementos.length > 0 ){
			set_evento( $elementos[0], "submit", function() { 
		    	var resultado = true;
		    	var objFecha = $("#PNBFEC")[0];
		    	var fecha = objFecha.value;
			    if( !es_valida_fecha(fecha) ){
			    	avisar(FMT_FECHA_ERRONEO);
		        	resultado = false;
		    	}
		    	if( resultado && is_fecha_futura(fecha) ){
		    		avisar(FECHA_POSTERIOR_HOY);
			        resultado = false;
		    	}
		    	if(resultado) return true;
	        	else return false;
 			} );
		}
	}
	
	if( idOperacion == "BCAEVS00" ) {
		set_evento ( $("#formEvolucion", $capa_contexto), "submit", function(){return validarSeleccionFechas($("#formEvolucion"),RANGO_FECHAS_EN_MESES,NUMERO_MAXIMO_MESES_EVOLUCION_SALDO);})
	}
	if( idOperacion == "BCASAL00" ) {
		set_evento ( $("#formSaldo", $capa_contexto), "submit", function(){return validarSeleccionFecha($("#formSaldo"),false);})
	}
	if( idOperacion == "BCASIT00" || idOperacion == "BCASIN00" || "BCASRF00" || "BCASDE00" || "BCASAF00" ) {
		set_evento ( $("#formSituacion", $capa_contexto), "submit", function(){return validarSeleccionFecha($("#formSituacion"),false);})
	}
	if( idOperacion == "BOPNPO00" || idOperacion == "BOPNPO01" ){
		var $form = $("#formAltaSuscripcion", $capa_contexto);
		if( $form.length == 1 ){
			set_evento( $form[0], "submit", function(){
				return validarOrdenOPF( this );				
			});
		}
	}
	if( idOperacion == "BORNPO11" || idOperacion == "BORNPO11V" ) {
		var $elementos = $(".comboBox", $capa_contexto);
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				if( this.nodeName == "SELECT" ){
					set_evento( this, "change", function() {
						if( this.options.length > 0 )
							$("#"+this.getAttribute("rel"))[0].value = this.options[this.selectedIndex].value;
						else
							$("#"+this.getAttribute("rel"))[0].value = "";
					} );
				}else if( this.nodeName == "INPUT" ){
					set_evento( this, "change", function() {
						var objSelect = $("#"+this.getAttribute("rel"))[0];
						var numValidos = 0;
						var indiceValido = 0
						for( var i=0; numValidos < 2  &&  i < objSelect.length; ++i ){
						 	if( objSelect.options[i].value.indexOf( this.value.toUpperCase() ) != -1 ){
						 		numValidos++;
						 		indiceValido = i;
						 	}
						}
						if( numValidos == 1 ){
							objSelect.selectedIndex = indiceValido;
							this.value = objSelect.options[objSelect.selectedIndex].value;
						}
					} );
				}
			} );
		}
	}
	
	if( idOperacion == "BORNPO11" || idOperacion == "BORNPO11V" ||
		idOperacion == "CARNMO00" || idOperacion == "CARNMO01") {
		var $elemPrecio = $("#linkObtenerPrecioHistorico", $capa_contexto);
		if( $elemPrecio.length > 0 ){
			$elemPrecio.each( function () {
				set_evento( this, "click", function() {
					var form = $(this).parents("form")[0];
					if( form != null && form.PNBREU ) {
						if ( form.PNBFEC ) {
							cambiarPrecioReferenciaHistorico( this, form.PNBREU, form.PNBFEC, $capa_contexto );
						} else {
							cambiarPrecioReferenciaUltimo( this, form.PNBREU, $capa_contexto );
						}
					}
				} );
			});
		}
	}
}
// Tpos. para Indicadores de calidad
var SEP_DATOS='#';
var CLAVE_IC1='IC1';
var CLAVE_TimeIP='TimeIP';
function getNameCookieIC1(){
	var ins = cogerValorParametroDeUrl('PNBINS');
	var por = cogerValorParametroDeUrl('PNBPOR');
	if ( ins != null && por != null ){
		var claveIC1 = ins + por + CLAVE_IC1;
		return claveIC1;
	}else
		return null;
}
function getNameCookieTimeIP(){
	var ins = cogerValorParametroDeUrl('PNBINS');
	var por = cogerValorParametroDeUrl('PNBPOR');
	if ( ins != null && por != null ){
		var claveTimeIP = ins + por + CLAVE_TimeIP;
		return claveTimeIP;
	}else
		return null;
}
function getValueCookieIC1(){
	var nameCookie = getNameCookieIC1();
	if( nameCookie != null )
		return getCookie( nameCookie );
	else
		return null;
}
function getValueCookieTimeIP(){
	var nameCookie = getNameCookieTimeIP();
	if( nameCookie != null )
		return getCookie( nameCookie );
	else
		return null;
}

function calculo_tpo_indicador_calidad(){
	var pos, pos2, pos3, tpoInit=0;
	var txtIc1 = getValueCookieIC1();
	if ( txtIc1 != null ){
		// Buscamos donde colocar el tiempo:
		// 	el primer tiempo es el id. traza
		// 	si es la diferencia de tpos es el 2o parametro
		// 	si es el tpoInicial en el 3er parametro
		pos = txtIc1.indexOf(SEP_DATOS); 
		if ( pos == -1 ) {
			idTraza = txtIc1;
		} else { 
			idTraza = txtIc1.substring(0, pos);
			pos2 = txtIc1.indexOf(SEP_DATOS, pos+1);
			if ( pos2 == -1 ) {
				//tpoCarga = txtIc1.substring(pos+1);
			} else {
				//tpoCarga = txtIc1.substring(pos+1, pos2);
				pos3 = txtIc1.indexOf(SEP_DATOS, pos2+1);
				if ( pos3 == -1 )
					tpoInit = txtIc1.substring(pos2+1);
				else{
					tpoInit = txtIc1.substring(pos2+1, pos3);
				}
			}
		}
	}

	if ( !isNaN(tpoInit)  &&  tpoInit > 0 )
		tpoCarga = (new Date()).getTime() - tpoInit;
	else
		tpoCarga = -1;
		
	var timeInitProceso = getTimeInitProceso();
	if ( !isNaN(timeInitProceso)  &&  timeInitProceso > 0 )
		tpoProceso = (new Date()).getTime() - timeInitProceso;
	else
		tpoProceso = -1;
}
function set_tpo_indicador_calidad_total_cliente() {
	var pos, pos2, pos3, tpoInit=0;
	var nameCookieIC1 = getNameCookieIC1();
	if( nameCookieIC1 != null ){
		var txtIc1 = getValueCookieIC1();
		// Establecemos el tiempo inicial para la siguiente peticion
		// y mantenemos los datos que tuviesemos de idTraza y tpoCarga
		tpoInit = (new Date()).getTime(); 
		txtIc1 = idTraza + SEP_DATOS + tpoCarga + SEP_DATOS + tpoInit + SEP_DATOS + tpoProceso;
		setCookie( nameCookieIC1, txtIc1 );
	}
}
function set_tpo_indicador_calidad_proceso_pag(){
	var timeInitProceso = (new Date()).getTime();
	setTimeInitProceso( timeInitProceso );
}

// variable 'timeInitProceso' que sobrevive entre paginas
function getTimeInitProceso(){
	//return navigator.timeInitProceso;
	var nameCookieTimeIP = getNameCookieTimeIP();
	if( nameCookieTimeIP != null ){
		var txtTimeIP = getValueCookieTimeIP();
	}
	return txtTimeIP;
}
function setTimeInitProceso( timeIP ){
	/*
	try {
		navigator.timeInitProceso = timeInitProceso;
	} catch(e){}
	*/
	var nameCookieTimeIP = getNameCookieTimeIP();
	if( nameCookieTimeIP != null ){
		setCookie( nameCookieTimeIP, ""+ timeIP );
	}
}

function getCookie(name) {
	if (document.cookie.length > 0) {
		ini=document.cookie.indexOf(name + '=');
		if (ini != -1){ 
			ini=ini+name.length+1; 
			fin=document.cookie.indexOf(';',ini);
			if (fin==-1)
				fin=document.cookie.length;
			return unescape(document.cookie.substring(ini,fin));
		} 
	}
	return null;
} 
function setCookie( name, value, path, segundos_caducidad ){
	var galleta = name + '=' + escape(value);
	if( path == 'undefined'  ||  path == null )
		galleta += ';path=/';
	else
		galleta += ';path=' + path;
	
	if (segundos_caducidad != 'undefined' && segundos_caducidad != null) {
		var fecha = new Date();
		if ( segundos_caducidad == "NEVER" )
			segundos_caducidad = 60*60*24*365*5*1000;
		
		fecha.setTime(fecha.getTime() + segundos_caducidad);
		galleta += ';expires='+fecha.toGMTString();
	}
	document.cookie = galleta;
}
function cogerValorParametroDeUrl( param ) {
	return cogerValorParametroDeUrlPasada ( document.URL, param ) ;
}
function cogerValorParametroDeUrlPasada(url, param) {
	var str, cadBusq, len, inicio, sgte; 
	if ( param == null )
		return null;
	str = url;
	cadBusq = param + '=';
	len = cadBusq.length + 1;
	if ( str.indexOf('?' + cadBusq) == -1 ) {
		if ( str.indexOf('&' + cadBusq) == -1 ) {
			return null;
		} else {
			inicio = str.indexOf('&' + cadBusq);
			sgte = str.indexOf('&',inicio+1);
			if ( sgte != -1 )
				return str.substring(inicio + len , sgte);
			else
				return str.substring( inicio + len , str.length);
		}
	} else {
		inicio = str.indexOf('?' + cadBusq);
		sgte = str.indexOf('&',inicio+1);
		if ( sgte != -1 )
			return str.substring(inicio + len , sgte);
		else
			return str.substring(inicio + len , str.length);
	}
}
// Arreglos Navegadores
function arreglos_navegadores(){
	// Transparencias en IE 6
	//if( IE6 )
	//	$elementos.css({'behavior':'url('+dirJS_Comun+'iepngfix.htc)'});
}
function marcar_indicadores(){
	// javascript habilitado
	var valueCookieJSH = getCookie('PNBJSH');
	if( valueCookieJSH == null ){
		setCookie('PNBJSH', 'S');
	}else{
		if( valueCookieJSH != 'S' )
			setCookie('PNBJSH', 'S');
	}
	
	// anchura de pantalla y documento
	if ( window.screen.width ){
		var nombreCookieADP = _INSTITUCION + _PORTAL + 'PNBADP';
		var valueCookieADP = getCookie( nombreCookieADP );
		if( valueCookieADP == null )
			setCookie( nombreCookieADP, window.screen.width );
		else{
			if( valueCookieADP != window.screen.width )
				setCookie( nombreCookieADP, window.screen.width );
		}
	}if ( document.body.offsetWidth ){
		var nombreCookieADH = _INSTITUCION + _PORTAL + 'PNBADH';
		var valueCookieADH = getCookie( nombreCookieADH );
		if( valueCookieADH == null )
			setCookie( nombreCookieADH, getAnchuraVentana() );
		else{
			if( valueCookieADH != getAnchuraVentana() )
				setCookie( nombreCookieADH, getAnchuraVentana() );
		}
	}
}
function getAnchuraVentana() {
	var anchura = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		//	Non-IE
		anchura = window.innerWidth;
	} else if( document.documentElement && ( document.documentElement.clientWidth ) ) {
		//	IE 6+ in 'standards compliant mode'
		anchura = document.documentElement.clientWidth;
	} else if( document.body && ( document.body.clientWidth ) ) {
		//	IE 4 compatible
		anchura = document.body.clientWidth;
	}
	return anchura;
}
// Limpiamos los input y textarea de los formularios
function limpiar_formularios(){
	$elementos = $("input:text, textarea");
	if ($elementos.length>0){
		$elementos.focus(function(){
			$this = $(this);  
			if ( $this.val().indexOf(" ") != -1 ) {
				$this.val(""); 
				$this.unbind('focus');
			}
		});
	}
}
// Cambiamos el listado de valores por Ajax al cambiar el mercado
function cambiarValores( objMercados, codMercado , $capa_contexto ){
	if( objMercados != null ){
		var urlBase = objMercados.getAttribute("rev");
		var objValores = $( "#"+objMercados.getAttribute("rel"), $capa_contexto )[0];
		var url = urlBase + codMercado;
		if ( objValores != null  &&  url != null  &&  objValores != ''  &&  url != '' ) {
				// Sin precio referencia no pide precio
				var $objValores = $(objValores, $capa_contexto);
				if( $objValores.hasClass("comboBox") )
					carga_url_en_input_select( url, objValores, null, inicializaComboBox, false );
				else // Sin precio referencia no pide precio
					carga_url_en_input_select( url, objValores, null, null, false );
		} else {
			return true;
		}
	}
}

function inicializaComboBox( html, obj_sust ){
	$(obj_sust).trigger("change");
}
			
function getFechaEditada( idi ){
	var date = new Date();
	var dia = date.getDate() < 10 ? "0"+date.getDate() : date.getDate();
	var mes = (date.getMonth()+1) < 10 ? "0"+(date.getMonth()+1) : (date.getMonth()+1);
	var ano = date.getFullYear();
	if ( idi == 'eu' ) 
		return ano +"/"+ mes +"/"+ dia;
	else
	if ( idi == 'en' )
		return mes +"/"+ dia +"/"+ ano;
	else
		return dia +"/"+mes +"/"+ ano;
}

function cambiarPrecioReferenciaUltimo(objSelect, inputReuters, $capa_contexto){
	var parFecha = "&PNBFEC="+getFechaEditada( _IDIOMA );
	var parReuters = "&PNBREU="+inputReuters.value;
	return cambiarPrecioReferencia( objSelect, parFecha + parReuters, $capa_contexto );
}
function cambiarPrecioReferenciaHistorico(objSelect, inputReuters, inputFecha, $capa_contexto){
	var parFecha = "&PNBFEC="+inputFecha.value;
	var parReuters = "&PNBREU="+inputReuters.value;
	return cambiarPrecioReferencia( objSelect, parFecha + parReuters, $capa_contexto );
}
function cambiarPrecioReferencia( objSelect, finUrl, $capa_contexto ){
	if( objSelect != null ){
		var urlBase = objSelect.getAttribute("rev");
		var objPrecio = $( "#" + objSelect.getAttribute("rel"), $capa_contexto )[0];
		var url = urlBase + finUrl;
		if ( objPrecio != null && url != null && objPrecio != '' && url != '' )
			carga_url_en_obj( url, objPrecio, null, cambiarPrecioReferenciaInput );
	}
}
function cambiaValorIndice( objRadio, $capa_contexto ){
	if( objRadio != null ){
		var $capaAOcultar = $( "#" +objRadio.getAttribute("rev"), $capa_contexto );
		var $capaAMostrar = $( "#" +objRadio.getAttribute("rel"), $capa_contexto );
		$capaAMostrar.removeClass("oculto");
		$capaAMostrar.removeClass("ocultar");
		$capaAMostrar.show();
		$capaAOcultar.hide();
	}
}
function cambiaPrecioPorcentaje( objRadio, $capa_contexto ){
	if( objRadio != null ){
		var $capaAOcultar = $( "#" + objRadio.getAttribute("rev"), $capa_contexto );
		var $capaAMostrar = $( "#" + objRadio.getAttribute("rel"), $capa_contexto );
		$capaAMostrar.removeClass("oculto");
		$capaAMostrar.removeClass("ocultar");
		$capaAMostrar.show();
		$capaAOcultar.hide();
	}
}

// Se llama desde un callback de Ajax
function cambiarPrecioReferenciaInput( html, objSust ){
	var input = objSust;
	if( input ) {
		html = ($.trim( html )).replace('.','').replace(',','.');

		input.value = html;
		setPrecioReferenciaAlerta( html );
	}
}
function setPrecioReferenciaAlerta ( valor ) {
	var input = $("#avisos #PNBPRR")[0];
	if( input )
		input.value = valor;
}
// Lightbox: ampliacion de imagenes
function ampliacion_imagenes() {
	$elementos = $("a[@rel*=lightbox]");
	if($elementos.length>0){
		$elementos.lightBox({
				imageLoading:			dirImgs+'lightbox-ico-loading.gif',
				imageBtnPrev:			dirImgs+'lightbox-btn-prev.gif',
				imageBtnNext:			dirImgs+'lightbox-btn-next.gif',
				imageBtnClose:			dirImgs+'lightbox-btn-close.gif',
				imageBlank:				dirImgs+'lightbox-blank.gif'
		});
	}
}

function calendarios() {
	var $input = $("input.textFecha");

		$input.datepicker({
			buttonImage: dirImgs + 'ico_calendario.png',
			buttonImageOnly:true,
			//maxDate: datepicker_max_date,
			//minDate: datepicker_min_date,
			closeAtTop:true,
			showOn: 'button',
			gotoCurrent: true,
			nextText: '',
			prevText: ''
});	
	
	for( i=0; i < $input.length; ++i ){
		var datepicker = $.data($input[i],'datepicker');
		if( typeof datepicker_max_date != 'undefined' ){
			datepicker.settings['maxDate'] = datepicker_max_date;
		}
		if( typeof datepicker_min_date != 'undefined' ){
			datepicker.settings['minDate'] = datepicker_min_date;
		}
		if( typeof datepicker_year_range != 'undefined' ){
			datepicker.settings['yearRange'] = datepicker_year_range;
		}
	}
}

function calendario_rango(){
}

function consenso_termometro($capa_contexto){
	var img_consenso = $("#imagen_consenso",$capa_contexto)[0];
	var span_consenso = $("#valor_consenso",$capa_contexto)[0];
	if( img_consenso != null  &&  span_consenso != null ){
		var valor_consenso = span_consenso.innerHTML;
		var valor_consenso_formateado = valor_consenso.replace(',','').replace('.','');
		var imagen_consenso = dirHTML_Comun + "termometro" + valor_consenso_formateado + ".png";
		img_consenso.src = imagen_consenso;
	/*
		var backgroud_image = consenso.style.backgroundImage;
		var valor_consenso = consenso.innerHTML;
		var valor_consenso_formateado = valor_consenso.replace(',','');
		var imagen_consenso = dirImgs + "termometro" + valor_consenso_formateado + ".png";
		consenso.style.backgroundImage = "url("+ imagen_consenso +")";
		*/
		
	}
}

//Menus de navegacion, nivel 2
function navegacionOriginal() {
	esNavegacionOriginal = false;
	$elementos = $("#menuSecun a");
	if ($elementos.length > 0) {
		$elementos.each( function () {
			id_grupo_menu = this.getAttribute("rev");
			if ( id_grupo_menu != null && id_grupo_menu != '' )
				set_evento( this, "click", function() { return mostrar_nivel_3( this )} );
		} );
		esNavegacionOriginal = true;
	}
	return esNavegacionOriginal;
}
function mostrar_nivel_3( enlace_menu ){
	bubble = true;
	id_grupo_menu = enlace_menu.getAttribute("rev");
	if ( id_grupo_menu != null && id_grupo_menu != '' ) {
		grupo_menu = document.getElementById( id_grupo_menu );
		if( grupo_menu != null ) {
			$grupo_menu = $(grupo_menu);
			if ( $grupo_menu.hasClass("oculto") ) {
				$(enlace_menu).parent("li").addClass("desplegado");
				$grupo_menu.removeClass("oculto");
			} else {
				$(enlace_menu).parent("li").removeClass("desplegado");
				$grupo_menu.addClass("oculto");
			}
			bubble = false;
		}
	} else {
		//bubble = carga_enlace_tipo_no_ajax(enlace_menu, "operacion");
	}
	return bubble;
}

function navegacionAlternativa( $capa_contexto ) {
	$elementos = $("ul.navegacionAlternativa", $capa_contexto);
	if($elementos.length>0){

		// Estirar el menu secundario de cada opcion 
		$("ul.navegacionAlternativa>li.nivel0>a ", $capa_contexto).each( function () {
			$(this).attr("href", $(this).attr("rel"));
		});
		$elementos.superfish({
			delay : 800,
			autoArrows : false,
			dropShadows: true,
			animation:   {opacity:'show',height:'show'}, 
			onBeforeShow: function(){},
			onShow: function(){}
		});
		
		// Secciones favoritas del usuario
		$("#seccionesFavoritasB #sel_seccion", $capa_contexto).each( function() {
			$(this).change(function(e) {
				var $form = $("#seccionesFavoritasB #form_sel_seccion", $capa_contexto);
				$form[0].action = $(this).val();
				$form[0].submit();
			})
		})

	}
}
function aplicarEstiloRedondeado( $capa_contexto ) {
	redondear($capa_contexto);
	redondear2( $(".redondear2", $capa_contexto)); 
	redondear2( $(".redondear2top", $capa_contexto), true);
}
//Estilos redondeados
function redondear($capa_contexto){
	$elementos = $('a.pestana',$capa_contexto);
	if ($elementos.length>0)
		setRdTop($elementos,$capa_contexto);
	
	$elementos = $('a.pestanaB',$capa_contexto);
	if ($elementos.length>0)
		setRdLeft($elementos,$capa_contexto);

	$elementos = $('a.solapaB.first',$capa_contexto);
	if ($elementos.length>0)
		setRdBottomLeft($elementos,$capa_contexto);
	$elementos = $('a.solapaB.last',$capa_contexto);
	if ($elementos.length>0)
		setRdBottomRight($elementos,$capa_contexto);
	
	// lista de elementos a redondear
	$elementos = $('#buscadorValor.redondeo',$capa_contexto);
	if ($elementos.length>0)
		setRdAll($elementos,$capa_contexto);
}
// Redondeo tipo2
function redondear2(Elems, isonlytop ) {
	var i, v=Elems, el,p,d;
	for(i=0;i<v.length;i++) {
		el=v[i];
	    d =document.createElement("div");
	    d.className = el.className.replace(/redondear2/g,"redondeado2");
	    el.className = "bordeRContenido";
	    p=el.parentNode;
		p.insertBefore(d,el);
		p.removeChild(el);
		d.appendChild(el);
		redondear2AddTop(d);
		if ( !isonlytop )
			redondear2AddBottom(d);
    }
}
function redondear2AddTop(el){
    var d = redonder2AddSpan(el,true);
	el.insertBefore(d,el.firstChild);
}
function redondear2AddBottom(el){
    var d = redonder2AddSpan(el,false);
	el.appendChild(d,el.firstChild);
}
function redonder2AddSpan(el,istop) {
	var i;
	var d=document.createElement("span");
	d.className="bordeR";
	var cn="bordeR";
	var lim=5;
	for(i=1;i<=lim;i++){
	    var x=document.createElement("span");
	    x.className=cn + (istop?i:(lim -i +1 ));
	    d.appendChild(x);
	}
	return d;
}

function setRdAll(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).prepend("<span class='rdTL'></span><span class='rdTR'></span>").append("<span class='rdBL'></span><span class='rdBR'></span>");
	});
}
function setRdTop(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).prepend("<span class='rdTL'></span><span class='rdTR'></span>");
	});
}
function setRdTopLeft(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).prepend("<span class='rdTL'></span>");
	});
}
function setRdTopRight(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).prepend("<span class='rdTR'></span>");
	});
}
function setRdBottom(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).append("<span class='rdBL'></span>").append("<span class='rdBR'></span>");
	});
}
function setRdBottomLeft(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).append("<span class='rdBL'></span>");
	});
}
function setRdBottomRight(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).append("<span class='rdBR'></span>");
	});
}
function setRdLeft(elemento,$capa_contexto){
	$elemento = $(elemento,$capa_contexto);
	$elemento.each(function(){
		$(this).prepend("<span class='rdTL'></span>").append("<span class='rdBL'></span>");
	});
}

// Tratar de que la pantalla se vea bien en cualquier ancho de documento o de pantalla
//Estilo s/ tamano pantalla
var _estilo_pantalla_reducida = "pantalla_reducida";
var _estilo_pantalla_super_reducida = "pantalla_super_reducida";
var _estilo_pantalla_normal = "pantalla_normal";
var _ajustado_en_servidor = "pantalla_normal";
var esPrimerChequeoEstiloPantalla = true;
var esEstablecidoPorServidor = false;

function establecerEstiloPantalla( esPorResize ) {
	var $body = $("body");

	if ( esPrimerChequeoEstiloPantalla ){
		esEstablecidoPorServidor = $body.hasClass( _ajustado_en_servidor ); 
		esPrimerChequeoEstiloPantalla = false;
	}

	if ( esPorResize || !esEstablecidoPorServidor ) {
		var anchura = getAnchuraVentana();
		var estiloElegido = _estilo_pantalla_normal;
		if ( anchura < _ANCHURA_MINIMA )
			estiloElegido = _estilo_pantalla_super_reducida;
		else
		if ( anchura < _ANCHURA_JUSTA )
			estiloElegido = _estilo_pantalla_reducida;
		
		$body.removeClass( _estilo_pantalla_super_reducida ).removeClass( _estilo_pantalla_reducida ).removeClass( _estilo_pantalla_normal );
		$body.removeClass( _ajustado_en_servidor );
		$body.addClass( estiloElegido );
	}
}

// UTILIDADES

//Descargas dinamicas
var fileJSCSS = new Array();
var iFileJSCSS = 0;
var timeCheck = 2000;
function testJSCSSCargado( iFileTemp ) {
	if ($.browser.msie) {
		if ( fileJSCSS[iFileTemp].readyState == "loaded" ||
			 fileJSCSS[iFileTemp].readyState == "complete") {
			fileJSCSS[iFileTemp].onload();
		} else {
			window.setTimeout ( "testJSCargado(fileJSCSS["+iFileTemp+"])", timeCheck );
		}
	}	
}
function loadCSS (file, callOnLoad) {
	var linkTemp = document.createElement('link');
	linkTemp.href = file;
	linkTemp.rel = 'stylesheet';   
	linkTemp.type = 'text/css';
	linkTemp.media = 'all';
	if ( callOnLoad != null && callOnLoad != 'undefined' ) {
		linkTemp.onload = callOnLoad;
		fileJSCSS[iFileJSCSS]=linkTemp;
		window.setTimeout ( "testJSCSSCargado("+iFileJSCSS+")", timeCheck );
		iFileJSCSS++;
	}
	document.getElementsByTagName('head')[0].appendChild(linkTemp); 
}
function loadJS (file, callOnLoad) {
	var scriptTemp = document.createElement('script');
	scriptTemp.src = file;
	scriptTemp.type = 'text/javascript';
	if ( callOnLoad != null && callOnLoad != 'undefined' ) {
		scriptTemp.onload = callOnLoad;
		fileJSCSS[iFileJSCSS]=scriptTemp;
		window.setTimeout ( "testJSCSSCargado("+iFileJSCSS+")", timeCheck );
		iFileJSCSS++;
	}
	document.getElementsByTagName('head')[0].appendChild(scriptTemp);
}
function toString ( obj ) {
	txt = "";
	for( var z in obj ){
		try{
			if ( typeof obj[z] != 'function' && obj[z]!='' && obj[z]!=null )
				txt += z + "=" + obj[z] + '\n';
		}catch(e){}
	}
	return txt;
}

function avisar(msg){
    alert(msg);
    return true;
}

function tamanoLetra(){
	var $elementos = $("#menuTamanoLetra");
	if( $elementos.length > 0 ){
		
		$elementos = $(".tamanoLetraMas");
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				set_evento( this, "click", function() {
					aumentarTamanoLetra();
				 } );
			} );
		}
	
		$elementos = $(".tamanoLetraMenos");
		if( $elementos.length > 0 ){
			$elementos.each( function () {
				set_evento( this, "click", function() {
					disminuirTamanoLetra();
				 } );
			} );
		}
	}
}

var tamanoLetraMax = 3;
var tamanoLetraMin = 1;
var tamanoLetraDefault = 2;
var tamanoLetraClaseRaiz = "tamanoLetra";
function aumentarTamanoLetra(){
	var claseTamanoLetra = getTamanoLetraClass();
	var numLetra = getTamanoLetraNum( claseTamanoLetra );
	if( numLetra < tamanoLetraMax ){
		numLetra = (numLetra*1.0) + 1;
		var $body = $('body');
		$body.removeClass( claseTamanoLetra );
		var claseTamanoLetraNueva = tamanoLetraClaseRaiz + numLetra;
		$body.addClass( claseTamanoLetraNueva );
		setValueCookieTamanoLetra( numLetra );
	} 
}
function disminuirTamanoLetra(){
	var claseTamanoLetra = getTamanoLetraClass();
	var numLetra = getTamanoLetraNum( claseTamanoLetra );
	if( numLetra > tamanoLetraMin ){
		numLetra = (numLetra*1.0) - 1;
		var $body = $('body');
		$body.removeClass( claseTamanoLetra );
		var claseTamanoLetraNueva = tamanoLetraClaseRaiz + numLetra;
		$body.addClass( claseTamanoLetraNueva );
		setValueCookieTamanoLetra( numLetra );
	}
}
function getTamanoLetraClass(){
	var $body = $('body');
	var cadenaClass = $body.attr('class');
	var indInicial = cadenaClass.indexOf( tamanoLetraClaseRaiz );
	var classTamanoLetra = tamanoLetraClaseRaiz + tamanoLetraDefault;
	if( indInicial != -1 ){
		var indFinal = cadenaClass.indexOf(" ", indInicial+1 );
		if( indFinal != -1 )
			classTamanoLetra = cadenaClass.substring( indInicial, indFinal );
		else
			classTamanoLetra = cadenaClass.substring( indInicial );
	}
	return classTamanoLetra;
}
function getTamanoLetraNum( clase ){
	if( clase != null )
		return clase.substring( tamanoLetraClaseRaiz.length );
	else
		return 0;
}
function getNameCookieTamanoLetra(){
	var ins = cogerValorParametroDeUrl('PNBINS');
	var por = cogerValorParametroDeUrl('PNBPOR');
	if ( ins != null && por != null )
		return ins + por + "PNBTLT";
	else
		return null;
}
function setValueCookieTamanoLetra( tamano ){
	var nameCookie = getNameCookieTamanoLetra();
	if( nameCookie != null )
		setCookie( nameCookie, tamano, null, "NEVER" );
}

