/*
 * <a><img></a>
 */
function rollover(enlace, resaltar){ // v2005-03-18
	var imagen=enlace.firstChild;
	
	if(resaltar){
		imagen.src=imagen.src.replace(/_h\.(png|gif|jpg)$/, '.$1');
		imagen.src=imagen.src.replace(/\.(png|gif|jpg)$/, '_h.$1');
	}else{
		imagen.src=imagen.src.replace(/_h\.(png|gif|jpg)$/, '.$1');
	}
}


function version_ie(){
	var re=/MSIE ([^ ;]+)/;
	return re.test(navigator.userAgent)? re.exec(navigator.userAgent)[1]: -1;
}


/*
 * Devuelve true si ambos URLs son de la misma página, false si no
 */
function son_urls_analogos(uno, dos, ignorar_query, solo_directorio){ /* v2006-03-07 */
	var pre=new RegExp('^(http|https):\/\/' + document.domain.replace('\.', '\\.'));
	var post=new RegExp('\/$|index\.php$');
	
	var uno=uno.replace(pre, '');
	var uno=uno.replace(post, '');
	var dos=dos.replace(pre, '');
	var dos=dos.replace(post, '');
	
	if(ignorar_query){
		var query=new RegExp('\\?.*$');
		
		var uno=uno.replace(query, '');
		var dos=dos.replace(query, '');
	}
	
	if(solo_directorio){
		var uno=uno.split('/')[1];
		var dos=dos.split('/')[1];
	}

	return uno==dos;
}



/*
 * Resalta en el submenú el enlace de la página actual
 */
function resaltar_submenu(id){
	if(typeof('document.getElementById')!='undefined'){
		var menu=document.getElementById(id);
		
		if(menu && (typeof(menu.getElementsByTagName)!='undefined') && (typeof(document.createElement)!='undefined') && (typeof(document.createTextNode)!='undefined')){
			var enlaces=menu.getElementsByTagName('a');
			for(var i=0; i<enlaces.length; i++){
				/*
				 * Preparamos los URLs que vamos a comparar
				 */
				var url_submenu=enlaces[i].href
				if(typeof(resaltar_submenu_url)!='undefined'){
					var url_pagina=resaltar_submenu_url;
				}else{
					var url_pagina=document.location.href;
				}
				
				if(son_urls_analogos(url_submenu, url_pagina)){
					// Versión sólo IE:
					//enlaces[i].outerHTML='[<em>' + enlaces[i].innerHTML + '</em>]';

					var resaltado_em=document.createElement('em');
					resaltado_em.appendChild(document.createTextNode(enlaces[i].innerHTML));
					
					var resaltado=document.createElement('span');
					//resaltado.setAttribute('style', 'border: 1px solid red;');
					resaltado.appendChild(document.createTextNode('['));
					resaltado.appendChild(resaltado_em);
					resaltado.appendChild(document.createTextNode(']'));
					enlaces[i].replaceChild(resaltado, enlaces[i].firstChild);
				}
			}
		}
	}
}

/*
 * Resalta en el menú principal el enlace de la sección o página actual
 *
 * es_subdirectorio (bool): indica si debe usarse un directorio de segundo nivel para comparar
 */
function resaltar_menu(id, es_subdirectorio){
	if(typeof('document.getElementById')!='undefined'){
		var menu=document.getElementById(id);
		
		if(menu && (typeof(menu.getElementsByTagName)!='undefined') && (typeof(document.createElement)!='undefined') && (typeof(document.createTextNode)!='undefined')){
			var enlaces=menu.getElementsByTagName('a');
			for(var i=0; i<enlaces.length; i++){
				/*
				 * Preparamos los URLs que vamos a comparar
				 */
				var url_submenu=enlaces[i].href
				if(typeof(resaltar_menu_url)!='undefined'){
					var url_pagina=resaltar_menu_url;
				}else{
					var url_pagina=document.location.href;
				}
				
				if(es_subdirectorio){
					if(son_urls_analogos(url_submenu, url_pagina, true)){
						rollover(enlaces[i], true);
						enlaces[i].onmouseout=null;
					}
				}else{
					if(son_urls_analogos(url_submenu, url_pagina, true, true)){
						rollover(enlaces[i], true);
						enlaces[i].onmouseout=null;
					}
				}
			}
		}
	}
}
