conectar(); // instanciar los 0bjetos $tabla_noticia=new Tabla_Noticia($dataBase->getEnlaceHost()); $tabla_museo=new Tabla_Museo($dataBase->getEnlaceHost()); $noticia=new Noticia(); $lista_elementos=$tabla_noticia->obtenerListaNoticiasDesde($desde,"","","0",""); $plantillas = array("plantillas/noticias/index.htm","plantillas/cabecera.htm","plantillas/lateral_general.htm","plantillas/pie.htm"); $plantilla = plantillas($plantillas,"noticias"); $indice=0; $color="normal"; $cuantos=$lista_elementos->getUltimo(); $plantillaFilaGenerica=leerFichero(RAIZ."/plantillas/noticias/fila.htm"); while ($indice<$cuantos){ $noticia=$lista_elementos->siguiente(); $plantillaFila=$plantillaFilaGenerica; $plantillaFila=str_replace(TAG_Nnoticia_VALUE,$noticia->getNnoticia(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_es_VALUE,$noticia->getTtit_es(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_eu_VALUE,$noticia->getTtit_eu(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_en_VALUE,$noticia->getTtit_en(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_fr_VALUE,$noticia->getTtit_fr(),$plantillaFila); $plantillaFila=str_replace(TAG_Ment_es_VALUE,$noticia->getMent_es(),$plantillaFila); $plantillaFila=str_replace(TAG_Ment_eu_VALUE,$noticia->getMent_eu(),$plantillaFila); $plantillaFila=str_replace(TAG_Ment_en_VALUE,$noticia->getMent_en(),$plantillaFila); $plantillaFila=str_replace(TAG_Ment_fr_VALUE,$noticia->getMent_fr(),$plantillaFila); $plantillaFila=str_replace(TAG_Tfoto_VALUE,$noticia->getTfoto(),$plantillaFila); $Tfoto = strtolower($noticia->getTfoto()); if ($Tfoto == "") $plantillaFila = preg_replace("/([\s\S]*)/","", $plantillaFila); $plantillaFila=str_replace(TAG_Falta_VALUE,fechaIdioma($noticia->getFalta()),$plantillaFila); $museo=new Museo(); if ($tabla_museo->existe($noticia->getNmuseo())) $museo=$tabla_museo->obtener($noticia->getNmuseo()); $plantillaFila = str_replace("TAG_Nmuseo_VALUE",$Nmuseo, $plantillaFila); $plantillaFila = str_replace("TAG_Tmuse_es_VALUE",$museo->getTmuse_es(), $plantillaFila); $plantillaFila = str_replace("TAG_Tmuse_eu_VALUE",$museo->getTmuse_eu(), $plantillaFila); $plantillaFila = str_replace("TAG_Tmuse_en_VALUE",$museo->getTmuse_en(), $plantillaFila); $plantillaFila = str_replace("TAG_Tmuse_fr_VALUE",$museo->getTmuse_fr(), $plantillaFila); $plantillaFilasCompleta.=$plantillaFila; $indice++; } $plantilla = preg_replace("/([\s\S]*)/",$plantillaFilasCompleta, $plantilla); // controlar que haya elementos if ($cuantos == 0) $plantilla = preg_replace("/([\s\S]*)/","",$plantilla); else $plantilla = preg_replace("/([\s\S]*)/","",$plantilla); $plantilla = str_replace("TAG_DESDE",$desde, $plantilla); $plantilla = str_replace("TAG_ELEMENTOS_WEB_POR_PAGINA",$lista_elementos->getUltimo(), $plantilla); // paginacion $num_noticia=$tabla_noticia->obtenerNumeroNoticias("","","0"); $num_paginas=ceil($num_noticia/NOTICIAS_WEB_POR_PAGINA); $pagina_actual=($desde/NOTICIAS_WEB_POR_PAGINA)+1; $plantilla = str_replace("TAG_NUM_ELEMENTOS",$num_noticia, $plantilla); $plantilla = str_replace("TAG_NUM_PAGINAS",$num_paginas, $plantilla); $plantilla = str_replace("TAG_PAGINA_ACTUAL",$pagina_actual, $plantilla); // anterior y siguiente $indice_anterior=$desde-NOTICIAS_WEB_POR_PAGINA; $indice_siguiente=$desde+NOTICIAS_WEB_POR_PAGINA; $plantilla = str_replace("TAG_ELEMENTO_ANTERIOR",$indice_anterior, $plantilla); $plantilla = str_replace("TAG_ELEMENTO_SIGUIENTE",$indice_siguiente, $plantilla); if ($desde <= 0) $plantilla = preg_replace("/([\s\S]*)/","", $plantilla); if ($indice_siguiente >= $num_noticia) $plantilla = preg_replace("/([\s\S]*)/", "", $plantilla); // listado de paginas $lista_paginas = ""; $pagina_inicial = 1; $pagina_final = $num_paginas; // si hay mas de 20 paginas, mostrar 10 por delante y por detras de la actual if ($num_paginas > 20) { if ($pagina_actual > 10) $pagina_inicial = $pagina_actual - 10; if ($pagina_actual < ($num_paginas - 10)) $pagina_final = $pagina_actual + 10; } for ($i=$pagina_inicial; $i<=$pagina_final; $i++) { $j = ($i -1)*NOTICIAS_WEB_POR_PAGINA; if ($i != $pagina_actual) { if ($id == "es") $lista_paginas.="
  • $i
  • "; if ($id == "eu") $lista_paginas.="
  • $i
  • "; if ($id == "en") $lista_paginas.="
  • $i
  • "; if ($id == "fr") $lista_paginas.="
  • $i
  • "; if ($id == "de") $lista_paginas.="
  • $i
  • "; if ($id == "ca") $lista_paginas.="
  • $i
  • "; } else $lista_paginas.="
  • $i
  • "; } $plantilla = str_replace("TAG_LISTA_PAGINAS",$lista_paginas, $plantilla); // quitar la paginacion si hay menos de 2 paginas if ($num_paginas < 2) $plantilla = preg_replace("/([\s\S]*)/", "", $plantilla); echo $plantilla; ?>