/*!
 * 
 * @category es.jatdes
 * @package aritema
 * @subpackage publicaciones
 * @Fecha  10-8-2009
 * @Version 1.0.0
 * @Estado Produccion
 * @Autor JatDes,S.L.
 * 
 */

/* Namespace */
var es = es || {};
es.jatdes = es.jatdes || {}; 
es.jatdes.aritema = es.jatdes.aritema || {}; 
es.jatdes.aritema.publicaciones = {};

 /**
  * Funciones genericas
  */
 
 /**
  * Variables 
  */
es.jatdes.aritema.publicaciones.nPublicacionesTotal = 0; 
es.jatdes.aritema.publicaciones.enlaceActivo = null;

es.jatdes.aritema.publicaciones.cantMostrarUltimas = 5;
es.jatdes.aritema.publicaciones.cantMostrarHome = 3;

es.jatdes.aritema.publicaciones.Revista = function(sNombre, sFicheroImagen) {
	this.Nombre 	= sNombre;
	this.fichero 	= sFicheroImagen;
}

/**
 * 
 * @param {string} sTit
 * @param {string} sAnyo
 * @param {string} sMes
 * @param {string} sRevist
 * @param {string} sResum
 * @param {string} sURLArticulo
 */
es.jatdes.aritema.publicaciones.Publicacion = function(sTit, sAnyo, sMes, sRevist, sResum, sURLArticulo) {

    this.Titulo = sTit;
    this.Anyo 	= sAnyo;
    this.Mes	= sMes;
	this.Revista = es.jatdes.aritema.publicaciones.obtenerRevistaPorNombre(sRevist);
	this.Resumen = sResum;
	this.URLArticulo = sURLArticulo;
	this.palabras = new Array();
	this.maquinasRelacionadas =  new Array();
	this.numPublicacion = ++es.jatdes.aritema.publicaciones.nPublicacionesTotal;
	
	this.agregarPalabras = function(){
		for(j=0;j<arguments.length; j++){
			this.palabras.push(es.jatdes.utils.trim(arguments[j]));	
		}
	};
	this.agregarMaquinas = function(){
		for(j=0;j<arguments.length; j++){
			this.maquinasRelacionadas.push(es.jatdes.utils.trim(arguments[j]));	
		}
	};	
	
	this.mostrarPublicacion = function(){
		var sHTML = "";
//<img src="images/canteras.jpg" alt="foto publicaci&oacute;n" width="100" height="140" class="foto" />
//<h2>Titular del art&iacute;culo editado</h2>
//<h3>Canteras y Explotaciones</h3>
//<p>23 de diciembre de 2008</p>
//<p>Fusce quis leo et ipsum commodo convallis. Mauris magna augue, rhoncus eget, sagittis id, vulputate id, tortor. Nam pharetra. Cras nisi metus, pulvinar ut, venenatis vel, convallis vitae, erat. Suspendisse in metus. Quisque gravida tempus magna.</p>
//<p> Etiam consequat interdum est. Ut consectetur, neque et pellentesque cursus, est risus elementum purus, et viverra nibh purus posuere metus. Mauris eros. In et leo. Donec urna. Nullam sem. Aliquam erat volutpat. Nunc tincidunt fermentum ligula. In mollis sagittis augue. Fusce quis leo et ipsum commodo convallis. Nullam sem. Aliquam erat volutpat. Nunc tincidunt fermentum ligula. In mollis sagittis augue. Fusce quis leo et ipsum commodo convallis. </p>
//<span style="float:right; border-left: 1px dotted #ccc; margin-top:10px; padding:4px 10px;"><img src="images/ico_pdf.gif" alt="icono pdf" width="30" height="16" /><a href="pdf/maquina.pdf" title="descargar archivo PDF en ventana nueva" target="_blank">Descargar art&iacute;culo</a></span>
//<hr />
		
		//sHTML += '<p>&nbsp;</p>';
		if(this.Revista!=null){
			sHTML += '<a href="pdf/' + this.URLArticulo + '" title="descargar archivo PDF en ventana nueva" target="_blank">';
			sHTML += '<img src="images/' + this.Revista.fichero +'" alt="foto publicaci&oacute;n" width="100" height="140" class="foto" />'; //Foto revista	
			sHTML += '</a>';
		}		
		sHTML += '<h2>' + this.Titulo + '</h2>';
		if(this.Revista!=null){ sHTML += '<h3>' + this.Revista.Nombre + '</h3>';}
		sHTML += '<p>' + this.Mes + ' ' + this.Anyo + '</p>';
		sHTML += '<p>' + this.Resumen + '</p>';
		if(this.maquinasRelacionadas.length>0){
			sHTML += '<div style="margin-left:130px;"><p><span class="bolder">Máquinas relacionadas:</span></p>';
			sHTML += '<ul>';
			for(k=0;k<this.maquinasRelacionadas.length; k++){
				sHTML += '<li>' + this.maquinasRelacionadas[k] + '</li>';	
			}
			sHTML += '</ul></div>';
		}
		sHTML += '<span style="float:right; border-left: 1px dotted #ccc; margin-top:10px; padding:4px 10px;"><img src="images/ico_pdf.gif" alt="icono pdf" width="30" height="16" /><a href="pdf/' + this.URLArticulo + '" title="descargar archivo PDF en ventana nueva" target="_blank">Descargar art&iacute;culo</a></span>';
		sHTML += '<hr />';
		return sHTML;
	}
	
	this.infoListadoHome = function(){
	//<p class="item"><a href="#">Fusce quis leo et ipsum commodo convallis. Mauris magna augue,<span class="bolder"> Aritema</span>sagittis id, vulputate id, tortor. Nam pharetra</a></p>
		var sHTML = "";
		sHTML += '<p class="item"><a href="publicaciones.htm">';
		sHTML += this.Titulo;
		sHTML += '</a></p>';
		return sHTML;
	}
	
	this.contienePalabra = function(sPalabraClave){
		var bRtdo = true;
		if(sPalabraClave.length>0)
			if(this.palabras.join('##').toLowerCase().indexOf(sPalabraClave.toLowerCase())<0) bRtdo = false;
		
		return bRtdo;
	};
};

es.jatdes.aritema.publicaciones.listadoUltimas = function(){
	var sHTML = '';
	for(i=0;i<es.jatdes.aritema.publicaciones.cantMostrarUltimas; i++){
		sHTML += es.jatdes.aritema.publicaciones.datos.Publicaciones[i].mostrarPublicacion();
	}
	document.getElementById("publicacionesCapa").innerHTML = sHTML ;
}

es.jatdes.aritema.publicaciones.listadoHome = function(){
	var sHTML = '';
	for(i=0;i<es.jatdes.aritema.publicaciones.cantMostrarHome; i++){
		sHTML += es.jatdes.aritema.publicaciones.datos.Publicaciones[i].infoListadoHome();
	}
	document.getElementById("news_list").innerHTML = sHTML ;
}

 
es.jatdes.aritema.publicaciones.obtenerPorTematicaYAnyo = function(sTematica, sAnyo){
	var sHTML = ''; var oPublicacionesRtdo = new Array(); var oPublicacionesAux = new Array();
	if(sAnyo!=''){
		for(i=0;i<es.jatdes.aritema.publicaciones.datos.Publicaciones.length; i++){
			if(es.jatdes.aritema.publicaciones.datos.Publicaciones[i].Anyo==sAnyo){oPublicacionesAux.push(es.jatdes.aritema.publicaciones.datos.Publicaciones[i]);}
		}
	}
	if(oPublicacionesAux.length==0){oPublicacionesAux = es.jatdes.aritema.publicaciones.datos.Publicaciones; }
	if(sTematica!=''){		
		for(i=0;i<oPublicacionesAux.length; i++){
			if(oPublicacionesAux[i].contienePalabra(sTematica)){oPublicacionesRtdo.push(oPublicacionesAux[i]);}
		}
	}else{
		oPublicacionesRtdo = oPublicacionesAux;
	}
	if((sAnyo=='')&&(sTematica=='')){
		es.jatdes.aritema.publicaciones.listadoUltimas();
	}else{
		if(oPublicacionesRtdo.length>0){
			for(i=0;i<oPublicacionesRtdo.length; i++){
				sHTML += oPublicacionesRtdo[i].mostrarPublicacion();
			}
		}else{
			sHTML += '<p>&nbsp;</p><p style="text-align:center;">No se ha encontrado ninguna publicación que tenga esas características.</p><p style="text-align:center;">Realice de nuevo la búsqueda o pulse <a href="javascript:initP();" title="Últimas publicaciones">aquí</a> para mostrar las últimas publicaciones.</p>';
		}
		document.getElementById("publicacionesCapa").innerHTML = sHTML ;
	}
	
}

es.jatdes.aritema.publicaciones.buscarPorTyA = function(){
	es.jatdes.aritema.publicaciones.obtenerPorTematicaYAnyo(document.formPublicaciones.cboEtiquetas.value, document.formPublicaciones.cboAnyo.value);
}

es.jatdes.aritema.publicaciones.selectPalabras = function(bPagIng){
	var tOpciones = new Array(); var sHTML = '';
	tOpciones[0]= "";
	for(i=0;i<es.jatdes.aritema.publicaciones.datos.Publicaciones.length; i++){
		for(j=0;j<es.jatdes.aritema.publicaciones.datos.Publicaciones[i].palabras.length; j++){
			tOpciones.push(es.jatdes.aritema.publicaciones.datos.Publicaciones[i].palabras[j]);	
		}
	}
	es.jatdes.utils.limpiarDuplicados(tOpciones);
	sHTML += '<select name="cboEtiquetas" class="inputselect" id="cboEtiquetas">';
	for(i=0;i<tOpciones.length; i++){
		if(tOpciones[i]=="") sHTML += '<option value="">seleccione temática...</option>';
		else sHTML += '<option value="' + tOpciones[i] + '">' + tOpciones[i] + '</option>';
	}
	sHTML += '</select>';
	return sHTML;
}

es.jatdes.aritema.publicaciones.selectAno = function(){
	var tOpciones = new Array(); var sHTML = '';
	tOpciones[0]= "";
	for(i=0;i<es.jatdes.aritema.publicaciones.datos.Publicaciones.length; i++){
		tOpciones.push(es.jatdes.aritema.publicaciones.datos.Publicaciones[i].Anyo);
	}
	es.jatdes.utils.limpiarDuplicados(tOpciones);
	sHTML += '<select name="cboAnyo" class="inputselect" id="cboAnyo">';
	for(i=0;i<tOpciones.length; i++){if(tOpciones[i]==""){sHTML += '<option value="">seleccione año...</option>';}else{sHTML += '<option value="' + tOpciones[i] + '">' + tOpciones[i] + '</option>';}}
	sHTML += '</select>';
	return sHTML;
}

es.jatdes.aritema.publicaciones.elementosBusqueda = function(){
	var sHTML = '';
	sHTML += es.jatdes.aritema.publicaciones.selectPalabras();
	sHTML += es.jatdes.aritema.publicaciones.selectAno();
	sHTML += '<input type="submit" value="Buscar" name="submit" class="button" />';
	document.getElementById("publicacionesseleccion").innerHTML = sHTML;
}

es.jatdes.aritema.publicaciones.obtenerRevistaPorNombre = function(sNombre){
	var oRevista = null;
	for(i=0;i<es.jatdes.aritema.publicaciones.datos.Revistas.length; i++){
		if(es.jatdes.aritema.publicaciones.datos.Revistas[i].Nombre.toUpperCase() == sNombre.toUpperCase()){
			oRevista = es.jatdes.aritema.publicaciones.datos.Revistas[i]; break;
		}
	}
	return oRevista;
}

/* Load */
function initP(){es.jatdes.aritema.publicaciones.listadoUltimas();es.jatdes.aritema.publicaciones.elementosBusqueda();}
function initLH(){es.jatdes.aritema.publicaciones.listadoHome();}
