Archived
1
0
Fork 0

Seitentitel wird aus Galerie- und Bildtitel zusammengesetzt (fixes #26)

This commit is contained in:
Jan Dittberner 2008-08-28 18:17:57 +00:00
parent 4dcb9470b6
commit f8a89b7ca1
3 changed files with 50 additions and 16 deletions

View file

@ -99,13 +99,16 @@ function getGalleryConfig($galleryname = null) {
* @bug @a data sollte @a label heißen * @bug @a data sollte @a label heißen
*/ */
function getImgInfo($galleryname, $imagename) { function getImgInfo($galleryname, $imagename) {
$label = getImageLabel($galleryname, $imagename);
$gallerylabel = getGalleryLabel($galleryname);
return array("name" => $imagename, return array("name" => $imagename,
"data" => getImageLabel($galleryname, $imagename), "data" => $label,
"preview" => GALLERYPREFIX . DIRECTORY_SEPARATOR . "preview" => GALLERYPREFIX . DIRECTORY_SEPARATOR .
getScaledImage($galleryname, $imagename, getScaledImage($galleryname, $imagename,
$GLOBALS["previewwidth"], false), $GLOBALS["previewwidth"], false),
"full" => GALLERYPREFIX . DIRECTORY_SEPARATOR . $galleryname . "full" => GALLERYPREFIX . DIRECTORY_SEPARATOR . $galleryname .
DIRECTORY_SEPARATOR . $imagename DIRECTORY_SEPARATOR . $imagename,
"title" => sprintf("%s :: %s", $gallerylabel, $label)
); );
} }
@ -139,10 +142,31 @@ function getImageLabel($galleryname, $imagename) {
} }
/** /**
* Liefert die aktuelle Gallerie. Die Gallerie kann entweder im * Liefert das Label der Galerie. Das Label wird aus dem Wert @a title
* GET-Parameter @c galleryname stehen, als Wert @a default in der @a * der Sektion @a gallery der @c galleryinfo.ini der Galerie
* gallery-Sektion der zentralen galleryinfo.ini angegeben werden oder * geholt. Falls dieser Wert nicht definiert ist, wird der Name der
* es wird das erste Unterverzeichnis von GALLERYPREFIX verwendet. * Galerie zurückgegeben.
*
* @param $galleryname Galeriename
*
* @return Label der Galerie
*/
function getGalleryLabel($galleryname) {
$inidata = getGalleryConfig($galleryname);
if ($inidata[GALLERYSEC]['title']) {
$label = $inidata[GALLERYSEC]['title'];
} else {
$label = $galleryname;
}
return $label;
}
/**
* Liefert die aktuelle Galerie. Die Galerie kann entweder im
* GET-Parameter @c galleryname stehen, als Wert @a default in der
* Sektion @a gallery der zentralen @c galleryinfo.ini angegeben
* werden oder es wird das erste Unterverzeichnis von @c GALLERYPREFIX
* verwendet.
* *
* @return Galeriename * @return Galeriename
*/ */
@ -277,18 +301,12 @@ function getGalleryLinks() {
GLOB_ONLYDIR) as $directory) { GLOB_ONLYDIR) as $directory) {
$basename = basename($directory); $basename = basename($directory);
if (galleryExists($basename)) { if (galleryExists($basename)) {
$inidata = getGalleryConfig($basename);
if ($inidata[GALLERYSEC]['title']) {
$label = $inidata[GALLERYSEC]['title'];
} else {
$label = $basename;
}
$url = sprintf('index.php?galleryname=%s', urlencode($basename)); $url = sprintf('index.php?galleryname=%s', urlencode($basename));
}
$retval[] = array('gallery' => $basename, $retval[] = array('gallery' => $basename,
'label' => $label, 'label' => getGalleryLabel($basename),
'url' => $url); 'url' => $url);
} }
}
return $retval; return $retval;
} }
@ -358,3 +376,18 @@ function renderDescription(&$thumbinfo) {
break; break;
} }
} }
/**
* Gibt den Titeltext für die Galerie aus.
*
* @param &$thumbinfo Referenz auf ein Array, wie es von
* getThumbNailInfo() zurückgegeben wird
*
* @return Inhalt für das title-Tag auf der Ausgabeseite
*/
function getGalleryTitle(&$thumbinfo) {
foreach ($thumbinfo[2] as $basename => $data) {
return htmlentities(sprintf("%s :: %s", getGalleryLabel($thumbinfo[1]),
getImageLabel($thumbinfo[1], $basename)));
}
}

View file

@ -52,7 +52,7 @@ $thumbinfo = getThumbNailInfo($gallery);
"-//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd"> "-//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Bilderframework</title> <title><?php print getGalleryTitle($thumbinfo); ?></title>
<link rel="stylesheet" type="text/css" href="css/main.css" /> <link rel="stylesheet" type="text/css" href="css/main.css" />
<link rel="stylesheet" href="css/format.css" type="text/css" /> <link rel="stylesheet" href="css/format.css" type="text/css" />
<link rel="stylesheet" href="css/jquery.lightbox.css" type="text/css" /> <link rel="stylesheet" href="css/jquery.lightbox.css" type="text/css" />

View file

@ -60,6 +60,7 @@ function updateContentImage(pathParts) {
$("#content_main img").attr("src", data["preview"]); $("#content_main img").attr("src", data["preview"]);
$("#content_main a").attr("href", data["full"]); $("#content_main a").attr("href", data["full"]);
$("#content_main a").attr("title", data["data"]); $("#content_main a").attr("title", data["data"]);
document.title = data["title"];
}); });
} }