From e756510d21940a3d32ba8caded0eedadf371100e Mon Sep 17 00:00:00 2001 From: Jan Dittberner Date: Thu, 28 Aug 2008 20:01:14 +0000 Subject: [PATCH] Alle HTML-Ausgaben werden jetzt in index.php generiert (fixes #28) --- includes/galleryfunctions.php | 76 +++++++++++++++++++---------------- index.php | 13 ++++-- 2 files changed, 51 insertions(+), 38 deletions(-) diff --git a/includes/galleryfunctions.php b/includes/galleryfunctions.php index 012cda8..2c31a29 100644 --- a/includes/galleryfunctions.php +++ b/includes/galleryfunctions.php @@ -311,70 +311,76 @@ function getGalleryLinks() { } /** - * Gibt die Thumbnail-Bilder die in @a $thumbinfo definiert sind aus. + * Gibt für die Ausgabe aufbereitete Informationen über die + * Thumbnail-Bilder die in @a $thumbinfo definiert sind zurück. * * @param &$thumbinfo Referenz auf ein Array, wie es von * getThumbNailInfo() zurückgegeben wird * - * @bug die HTML-Ausgabe sollte in die Ausgabeseite verschoben werden - * und diese Funktion nur noch die Daten entsprechend aufbereiten + * @return ein Array mit einem assoziativen Array pro Thumbnail-Bild + * mit den Keys @a src, @a sizes und @a alt, die jeweils die relative + * URL des Thumbnail-Bildes, die Größenangaben für ein img-Tag sowie + * die Angaben für das alt-Attribut eines img-Tags enthalten * * @see getThumbNailInfo() */ -function showThumbnails(&$thumbinfo) { +function getAllThumbnails(&$thumbinfo) { + $retval = array(); foreach ($thumbinfo[2] as $basename => $data) { - printf("
\"\"
", - GALLERYPREFIX . DIRECTORY_SEPARATOR . $data[0], - $data[1][3]);; + $retval[] = array('src' => GALLERYPREFIX . DIRECTORY_SEPARATOR . $data[0], + 'sizes' => $data[1][3], + 'alt' => getImageLabel($thumbinfo[1], $basename)); } + return $retval; } /** - * Gibt das erste Vorschaubild aus @a $thumbinfo aus. + * Gibt die Daten für das erste Vorschaubild aus @a $thumbinfo zurück. * * @param &$thumbinfo Referenz auf ein Array, wie es von * getThumbNailInfo() zurückgegeben wird * - * @bug die HTML-Ausgabe sollte in die Ausgabeseite verschoben werden - * und diese Funktion nur noch die Daten entsprechend aufbereiten + * @return ein assoziatives Array mit den Keys @a title, @a full, @a + * src, @a alt und @a sizes jeweils mit den Werten Titel des Bildes, + * relative URL der Vollbildansicht, relative URL des Vorschaubildes, + * Alternativtext für das Bild und Größenangaben des Bildes für ein + * img-Tag * * @see getThumbNailInfo() */ -function showPreview(&$thumbinfo) { - foreach ($thumbinfo[2] as $basename => $data) { - $galleryname = $thumbinfo[1]; - $fullname = GALLERYPREFIX . DIRECTORY_SEPARATOR . $galleryname . - DIRECTORY_SEPARATOR . $basename; - $scaledimage = getScaledImage($galleryname, $basename, - $GLOBALS["previewwidth"], false); - $scaledimagesize = getimagesize(realpath(GALLERYPREFIX . - DIRECTORY_SEPARATOR . - $scaledimage)); - $label = getImageLabel($galleryname, $basename); - printf('' . - '%s', - $label, $fullname, GALLERYPREFIX, DIRECTORY_SEPARATOR, - $scaledimage, $label, $scaledimagesize[3]); - break; - } +function getFirstPreview(&$thumbinfo) { + reset($thumbinfo[2]); + $basename = key($thumbinfo[2]); + $data = current($thumbinfo[2]); + $galleryname = $thumbinfo[1]; + $fullname = GALLERYPREFIX . DIRECTORY_SEPARATOR . $galleryname . + DIRECTORY_SEPARATOR . $basename; + $scaledimage = getScaledImage($galleryname, $basename, + $GLOBALS["previewwidth"], false); + $scaledimagesize = getimagesize(realpath(GALLERYPREFIX . + DIRECTORY_SEPARATOR . + $scaledimage)); + $label = getImageLabel($galleryname, $basename); + return array('title' => $label, + 'full' => $fullname, + 'src' => GALLERYPREFIX . DIRECTORY_SEPARATOR . $scaledimage, + 'alt' => $label, + 'sizes' => $scaledimagesize[3]); } /** - * Gibt die Beschreibung des ersten Bildes aus @a $thumbinfo aus. + * Gibt die Beschreibung des ersten Bildes aus @a $thumbinfo zurück. * * @param &$thumbinfo Referenz auf ein Array, wie es von * getThumbNailInfo() zurückgegeben wird * - * @bug die HTML-Ausgabe sollte in die Ausgabeseite verschoben werden - * und diese Funktion nur noch die Daten entsprechend aufbereiten + * @return HTML-kodierte Beschreibung des Bildes * * @see getThumbNailInfo() */ -function renderDescription(&$thumbinfo) { - foreach ($thumbinfo[2] as $basename => $data) { - print htmlentities(getImageLabel($thumbinfo[1], $basename)); - break; - } +function getFirstDescription(&$thumbinfo) { + reset($thumbinfo[2]); + return htmlentities(getImageLabel($thumbinfo[1], key($thumbinfo[2]))); } /** diff --git a/index.php b/index.php index 4cfed14..702caaf 100644 --- a/index.php +++ b/index.php @@ -98,7 +98,10 @@ a:active { width="10" height="65" />
%s
', + $thumbdata['src'], $thumbdata['alt'], $thumbdata['sizes']); + } ?>
nach rechts
@@ -108,7 +111,11 @@ a:active {
' . + '%s', + $data['title'], $data['full'], $data['src'], $data['alt'], + $data['sizes']); ?>
@@ -119,7 +126,7 @@ a:active {