$rootdir = $Page->link;
$nav = explode('/', $rootdir);
+if (count($nav) > 1 and $nav[1] == 'tag') {
+ $rootdir = preg_replace('{/}', '/.', $rootdir, 1);
+}
$nav[0] = "Foto's"; # override of root 'foto'
$title = array_pop($nav);
$Page->title = ($nav ? implode(' ', $nav) . ': ' : '') . $title;
-if ($Page->api) {
+if ($_SERVER['HTTP_ACCEPT'] === 'application/json') {
+ header('Access-Control-Allow-Origin: *');
+ header('Cache-Control: max-age=10');
+ if (file_exists($rootdir)) {
+ header('Last-Modified: '.gmdate(DATE_RFC7231, filemtime($rootdir)));
+ }
+ else {
+ http_response_code(404);
+ }
+ $imgs = [];
+ foreach (glob("$rootdir/*.jpg") as $path) {
+ $target = preg_replace('{^(\.\./)*}', '', readlink($path));
+ $imgs[] = ["/$target"];
+ }
+ print json_encode($imgs);
+ exit;
+}
+elseif ($Page->api) {
$img = "$rootdir/index.jpg";
if (file_exists($img)) {
# cover image of current album
print $Page->raw; # page intro
}
-if (!function_exists('showthumb')) {
-function showthumb($path)
-{
- // assume all album entries are symlinks to archive originals
- $target = preg_replace('{^(\.\./)*}', '', readlink($path));
- $thumb = 'thumb/262/' . $target;
-
- @list ($order, $size, $title) = explode(':', pathinfo($path, PATHINFO_FILENAME), 3);
- $imgtag = 'img src="/'.$thumb.'"';
- if ($title) {
- $imgtag .= ' title="'.htmlspecialchars(urldecode($title)).'"';
- }
- if ($size) {
- $imgtag .= ' data-size="'.$size.'"';
- }
-
- return sprintf('<a href="/%s"><%s /></a>'."\n", $target, $imgtag);
-}
-}
-
if ($imgs = glob("$rootdir/*", GLOB_ONLYDIR)) {
natsort($imgs);
print '<ul class="gallery cat">'."\n";
if ($imgs = glob("$rootdir/*.jpg")) {
print '<ul class="gallery album">'."\n";
- foreach ($imgs as $img) {
- if ($img == "$rootdir/index.jpg") {
+ foreach ($imgs as $path) {
+ if ($path == "$rootdir/index.jpg") {
# cover image of current album
- $Page->image = "/$img";
+ $Page->image = "/$path";
continue;
}
- if (!is_link($img)) continue;
- print '<li>'.showthumb($img);
+ if (!is_link($path)) continue;
+
+ // assume all album entries are symlinks to archive originals
+ $target = preg_replace('{^(\.\./)*}', '', readlink($path));
+ $thumb = 'thumb/262/' . $target;
+
+ @list ($order, $size, $title) = explode(':', pathinfo($path, PATHINFO_FILENAME), 3);
+ $imgtag = 'img src="/'.$thumb.'"';
+ if ($title) {
+ $imgtag .= ' title="'.htmlspecialchars(urldecode($title)).'"';
+ }
+ if ($size) {
+ $imgtag .= ' data-size="'.$size.'"';
+ }
+
+ print '<li>';
+ printf('<a href="/%s"><%s /></a>'."\n", $target, $imgtag);
}
print '</ul>'."\n\n";