conectar(); // instanciar los 0bjetos $tabla_enlace=new Tabla_Enlace($dataBase->getEnlaceHost()); $enlace=new Enlace(); $lista_elementos=$tabla_enlace->obtenerListaEnlacesDesde($desde); $plantillas = array("plantillas/enlaces/index.htm","plantillas/cabecera.htm","plantillas/lateral_general.htm","plantillas/pie.htm"); $plantilla = plantillas($plantillas,"enlaces"); $indice=0; $color="normal"; $cuantos=$lista_elementos->getUltimo(); $plantillaFilaGenerica=leerFichero(RAIZ."/plantillas/enlaces/fila.htm"); while ($indice<$cuantos){ $enlace=$lista_elementos->siguiente(); $plantillaFila=$plantillaFilaGenerica; $plantillaFila=str_replace(TAG_COLOR,$color,$plantillaFila); $plantillaFila=str_replace(TAG_Nenlace_VALUE,$enlace->getNenlace(),$plantillaFila); $plantillaFila=str_replace(TAG_Tlogo_VALUE,$enlace->getTlogo(),$plantillaFila); $plantillaFila=str_replace(TAG_Turl_es_VALUE,$enlace->getTurl_es(),$plantillaFila); $plantillaFila=str_replace(TAG_Turl_eu_VALUE,$enlace->getTurl_eu(),$plantillaFila); $plantillaFila=str_replace(TAG_Turl_en_VALUE,$enlace->getTurl_en(),$plantillaFila); $plantillaFila=str_replace(TAG_Turl_fr_VALUE,$enlace->getTurl_fr(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_es_VALUE,$enlace->getTtit_es(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_eu_VALUE,$enlace->getTtit_eu(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_en_VALUE,$enlace->getTtit_en(),$plantillaFila); $plantillaFila=str_replace(TAG_Ttit_fr_VALUE,$enlace->getTtit_fr(),$plantillaFila); $plantillaFilasCompleta.=$plantillaFila; // alternar el color if ($color == "normal") $color = "sombreado"; else $color = "normal"; $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_enlace=$tabla_enlace->obtenerNumeroEnlaces(); $num_paginas=ceil($num_enlace/ENLACES_WEB_POR_PAGINA); $pagina_actual=($desde/ENLACES_WEB_POR_PAGINA)+1; $plantilla = str_replace("TAG_NUM_ELEMENTOS",$num_enlace, $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-ENLACES_WEB_POR_PAGINA; $indice_siguiente=$desde+ENLACES_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_enlace) $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)*ENLACES_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
  • "; if ($id == "gl") $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); $dataBase->desconectar(); echo($plantilla); ?>