// JavaScript Document

function listado_autores(){
	new Ajax.Request('congreso_spdece08_Web.xml', { onSuccess:mostrar_listado_autores, onFailure:errFunc});
}
function ver_autor(){
	new Ajax.Request('congreso_spdece08_Web.xml', { onSuccess:mostrar_articulos_autor, onFailure:errFunc});
}
function buscador_sesion(){
	new Ajax.Request('congreso_spdece08_Web.xml', { onSuccess:mostrar_articulos_sesion, onFailure:errFunc});
}
function buscar_palabra_clave(){
	new Ajax.Request('congreso_spdece08_Web.xml', { onSuccess:mostrar_palabra_clave, onFailure:errFunc});
}

function errFunc(){
	alert("Error en la lectura del fichero XML");
}

function mostrar_listado_autores(t) {
	var xotree = new XML.ObjTree();
	tree = xotree.parseXML( t.responseText );
	var autores=tree["congreso"].autor;
	var miarray = new Array(autores.length);
	var txt="";
	for (z=0;z<autores.length;z++) {
		miarray[z]= new Array(2);
		miarray[z][0]=autores[z].nom_aut;
		miarray[z][1]=autores[z]["-id_aut"];
	}
	miarray.sort();
	for (z=0;z<autores.length;z++) {
		txt+= "<a href='ver_autor.html?autor=" + miarray[z][1] + "'>" + miarray[z][0] + "</a><br/> ";
	}
		txt+="<div class='arriba'> <a href='#arriba'>Ir al principio </a></div>";
	  $('resultado').update(txt);
}

function mostrar_articulos_autor(t) {
	var xotree = new XML.ObjTree();
	tree = xotree.parseXML( t.responseText );
	var articulos=tree["congreso"].articulo;
	var autores=tree["congreso"].autor;
	var miarray = new Array(autores.length);
	for (z=0;z<autores.length;z++) {
		miarray[z]=autores[z].nom_aut;
	}
	var txt="";
	var autor= obtener_parametro ('autor');
	for (i=0;i<articulos.length;i++) { 
		numero_autor=articulos[i].id_aut;
		var coincide_autor=false;
		var nombre_autor = "";
		if (! isNaN(numero_autor)) {
			if (articulos[i].id_aut == autor ) {
					coincide_autor=true;
					nombre_autor = miarray[eval((articulos[i].id_aut) - 1)];
			}
		}
		else { 
			for (j=0;j<articulos[i].id_aut.length; j++) {
				if (articulos[i].id_aut[j] == autor ) {
					coincide_autor=true;
					for (k=0;k<articulos[i].id_aut.length; k++) {
						nombre_autor+= miarray[eval((articulos[i].id_aut[k]) - 1)];
						if (k < eval (articulos[i].id_aut.length - 1) ) {
							nombre_autor+="; ";
						}
					}
			    }
			}
			}
			if (coincide_autor) {
				txt+= "<div class='titulo-articulo'><a href='./contribuciones/" + articulos[i].contenido + "'>" + articulos[i].titulo + "<img class='pdf' src='./images/pdf.jpg'/></a></div><br/> ";
				txt+="<b>Autor/Autores:</b> " + nombre_autor + "<br/>";
				var sesion = ( (articulos[i].num_sesion == 9) ? "Poster" : articulos[i].num_sesion);
				txt+="<b>Sesión: </b>" + sesion + "<br/> ";
		
				var palabras_clave = "";
				for (j=0;j< articulos[i].palabra_clave.length; j++) {
					palabras_clave += articulos[i].palabra_clave[j];
					if (j < eval (articulos[i].palabra_clave.length - 1 )) {
						palabras_clave +=", ";
					} 
				}
				txt+="<b>Palabras clave:</b> " + palabras_clave + "<br/> ";
				
				var abstract ="";
				abstract = articulos[i].resumen;
				
				txt+="<br/>" + ' <a href="javascript:;" id="a' + articulos[i]["-id_art"]+ '"' + ' onmousedown="toggleSlide(' + "'" + articulos[i]["-id_art"] + "');" + '"><img src="./images/arrow_close.gif" border="0"</img>Ver Resumen</a> <br/>';
				
				txt+= "<div id='"+ articulos[i]["-id_art"] + "' style='display:none;  overflow:visible; height:135px;'>" + abstract + "</div> <br/><br/>";
			}
	}
	  $('resultado').update(txt);
}

function mostrar_palabra_clave(t){
	var xotree = new XML.ObjTree();
	var palabra_clave_buscada = document.forms[0].palabra_clave.value;
	tree = xotree.parseXML( t.responseText );
	var articulos=tree["congreso"].articulo;
	var autores=tree["congreso"].autor;
	var miarray = new Array(autores.length);
	for (z=0;z<autores.length;z++) {
		miarray[z]=autores[z].nom_aut;
	}

	var txt="";
	for (i=0;i<articulos.length;i++) {
		var encontrado = false;
		for (j=0;j< articulos[i].palabra_clave.length; j++) {
			if (articulos[i].palabra_clave[j].toLowerCase().match (palabra_clave_buscada.toLowerCase()) != null ) {
				encontrado = true;
				j=articulos[i].palabra_clave.lenght;
			}
		}
		if (encontrado) {
					txt+= "<div class='titulo-articulo'><a href='./contribuciones/" + articulos[i].contenido + "'>" + articulos[i].titulo + "<img class='pdf' src='./images/pdf.jpg'/></a></div><br/> ";
					var nombre_autor = "";
					var numero_autor=articulos[i].id_aut;

					if (! isNaN(numero_autor)) {
						nombre_autor = miarray[eval((articulos[i].id_aut) - 1)];
					} else { 
						for (j=0;j<articulos[i].id_aut.length; j++) {
							nombre_autor+= miarray[eval((articulos[i].id_aut[j]) - 1)];
							if (j < eval (articulos[i].id_aut.length - 1) ) {
								nombre_autor+="; ";
							}
						}
			    	}
					txt+="<b>Autor/Autores:</b> " + nombre_autor +  "<br/>";
					var sesion = ( (articulos[i].num_sesion == 9) ? "Poster" : articulos[i].num_sesion);
					txt+="<b>Sesión: </b>" + sesion + "<br/> ";
			
					var palabras_clave = "";
					for (j=0;j< articulos[i].palabra_clave.length; j++) {
						if (articulos[i].palabra_clave[j].toLowerCase().match (palabra_clave_buscada.toLowerCase()) != null) {
								palabras_clave += "<span class='texto_resaltado'>" + articulos[i].palabra_clave[j]+ "</span>";
						} else {
								palabras_clave += articulos[i].palabra_clave[j];
						}
						if (j < eval (articulos[i].palabra_clave.length - 1 )) {
							palabras_clave +=", ";
						} 
					}
					txt+="<b>Palabras clave:</b> " + palabras_clave + "<br/> ";
					
					var abstract ="";
					abstract = articulos[i].resumen;
					
					txt+="<br/>" + ' <a href="javascript:;" id="a' + articulos[i]["-id_art"]+ '"' + ' onmousedown="toggleSlide(' + "'" + articulos[i]["-id_art"] + "');" + '"><img src="./images/arrow_close.gif" border="0"</img>Ver Resumen</a> <br/>';
				
				txt+= "<div id='"+ articulos[i]["-id_art"] + "' style='display:none;  overflow:visible; height:135px;'>" + abstract + "</div> <br/><br/>";
			} 
			
	}
	  if (txt.length < 1 ) {
				txt="<b> No se ha encontrado esa palabra clave </b>";
			}
	  $('resultado').update(txt);
}

function mostrar_articulos_sesion(t) {
	var xotree = new XML.ObjTree();
	tree = xotree.parseXML(t.responseText );
	var articulos=tree["congreso"].articulo;
	var txt="";
	var sesion = document.busqueda_sesion.sesion.value;
	if (sesion == 0) {
		return;
	}
	var autores=tree["congreso"].autor;
	var miarray = new Array(autores.length);
	for (z=0;z<autores.length;z++) {
		miarray[z]=autores[z].nom_aut;
	}
	for (i=0;i<articulos.length;i++) {
		if ( (articulos[i].num_sesion == sesion) ) {
			
					txt+= "<div class='titulo-articulo'>" +  articulos[i].titulo + "</div> ";
					var nombre_autor = "";
					var numero_autor=articulos[i].id_aut;

					if (! isNaN(numero_autor)) {
						nombre_autor = miarray[eval((articulos[i].id_aut) - 1)];
					} else { 
						for (j=0;j<articulos[i].id_aut.length; j++) {
							nombre_autor+= miarray[eval((articulos[i].id_aut[j]) - 1)];
							if (j < eval (articulos[i].id_aut.length - 1) ) {
								nombre_autor+="; ";
							}
						}
			    	}
					txt+="<b>Autor/Autores:</b> " + nombre_autor +  "<br/>";
					var num_sesion = ( (articulos[i].num_sesion == 9) ? "Poster" : articulos[i].num_sesion);
					txt+="<b>Sesión: </b>" + num_sesion + "<br/> ";
					var palabras_clave = "";
					for (j=0;j< articulos[i].palabra_clave.length; j++) {
						palabras_clave += articulos[i].palabra_clave[j];
					
						if (j < eval (articulos[i].palabra_clave.length - 1 )) {
							palabras_clave +=", ";
						} 
					}
					txt+="<b>Palabras clave:</b> " + palabras_clave + "<br/> ";
					
					var abstract ="";
					abstract = articulos[i].resumen;
					
					txt+="<br/>" + ' <a href="javascript:;" id="a' + articulos[i]["-id_art"]+ '"' + ' onmousedown="toggleSlide(' + "'" + articulos[i]["-id_art"] + "');" + '"><img src="arrow_close.gif" border="0"</img>Resumen</a> ';
					
					txt+=" | <a href='./contribuciones/"+ articulos[i].contenido + "'>" + "Art&iacute;culo <img class='pdf' src='pdf.jpg'/></a>";
					var presentacion ="";
					presentacion = articulos[i].presentacion;
					if ( presentacion ) {
						txt+=" | <a href='./presentaciones/" + presentacion + "'> Presentaci&oacute;n  <img class='pdf' src='ppt.jpg'/></a> <br/>";
					}
				
				txt+= "<div id='"+ articulos[i]["-id_art"] + "' style='display:none;  overflow:visible; height:135px;'>" + abstract + "</div> <br/><br/>";
		}
	}

	  $('resultado').update(txt);
}

function mostrar_articulos_sesion2(t) {
	var xotree = new XML.ObjTree();
	tree = xotree.parseXML(t.responseText );
	var articulos=tree["congreso"].articulo;
	var txt="";
	var sesion = document.busqueda_sesion.sesion.value;
	if (sesion == 0) {
		return;
	}
	var autores=tree["congreso"].autor;
	var miarray = new Array(autores.length);
	for (z=0;z<autores.length;z++) {
		miarray[z]=autores[z].nom_aut;
	}
	txt="<table>";
	for (i=0;i<articulos.length;i++) {
		if ( (articulos[i].num_sesion == sesion) ) {
			txt+="<tr>";
					txt+= "<td><div class='titulo-articulo'><a href='./contribuciones/" + articulos[i].contenido + "'>" + articulos[i].titulo + "</a></div><br/> ";
					var nombre_autor = "";
					var numero_autor=articulos[i].id_aut;

					if (! isNaN(numero_autor)) {
						nombre_autor = miarray[eval((articulos[i].id_aut) - 1)];
					} else { 
						for (j=0;j<articulos[i].id_aut.length; j++) {
							nombre_autor+= miarray[eval((articulos[i].id_aut[j]) - 1)];
							if (j < eval (articulos[i].id_aut.length - 1) ) {
								nombre_autor+="; ";
							}
						}
			    	}
					txt+="<b>Autor/Autores:</b> " + nombre_autor +  "<br/>";
					var num_sesion = ( (articulos[i].num_sesion == 9) ? "Poster" : articulos[i].num_sesion);
					txt+="<b>Sesión: </b>" + num_sesion + "<br/> ";
					var palabras_clave = "";
					for (j=0;j< articulos[i].palabra_clave.length; j++) {
						palabras_clave += articulos[i].palabra_clave[j];
					
						if (j < eval (articulos[i].palabra_clave.length - 1 )) {
							palabras_clave +=", ";
						} 
					}
					txt+="<b>Palabras clave:</b> " + palabras_clave + "<br/> ";
					
					var abstract ="";
					abstract = articulos[i].resumen;
					
					txt+="<br/>" + ' <a href="javascript:;" id="a' + articulos[i]["-id_art"]+ '"' + ' onmousedown="toggleSlide(' + "'" + articulos[i]["-id_art"] + "');" + '"><img src="./images/arrow_close.gif" border="0"></img>Ver Resumen</a> ';
					
					txt+= "<div id='"+ articulos[i]["-id_art"] + "' style='display:none;  overflow:visible; height:135px;'>" + abstract + "</div> <br/><br/></td>";
					
					txt+="<td> <a href='#' >  <img class='pdf' src='./images/pdf.jpg' alt='Ver PDF'/></a> </td><td>  <a href='#'>  <img class='pdf' src='./images/ppt.jpg' alt='Ver PowerPoint'/></a> </td></tr><br/>";
				
				
		}
	}

	  $('resultado').update(txt);
}

function obtener_parametro ( name ){
	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp ( regexS );
	var tmpURL = window.location.href;
	var results = regex.exec( tmpURL );
	if( results == null )
		return"";
	else
		return results[1];
}

function toggleSlide(objname){
  var v="a"+objname;
  if(document.getElementById(objname).style.display == "none"){
    slidedown(objname);
	document.getElementById(v).childNodes[0].src = "arrow_open.gif";
	document.getElementById(v).childNodes[1].nodeValue = "Ocultar Resumen";
  }else{
    slideup(objname);
	document.getElementById(v).childNodes[0].src = "arrow_close.gif";
	document.getElementById(v).childNodes[1].nodeValue = "Resumen";
  }
}