]> git.plutz.net Git - shellwiki/blob - macros/gallery
Merge commit 'ff5af5cdcdc909682fede7999751bce20694bc81'
[shellwiki] / macros / gallery
1 #!/bin/sh
2
3 . "$_EXEC/cgilite/cgilite.sh"
4 . "$_EXEC/acl.sh"
5 . "$_EXEC/tools.sh"
6
7 [ $# = 0 ] && set -- "*"
8
9 printf '<div class="macro gallery">'
10 for glob in "$@"; do
11   page="${glob%/*}"
12   [ "$page" = "$glob" ] && page=./
13   [ ! "$page" ]         && page=/
14
15   acl_read "$(page_abs "${page}")" \
16   && attachment_glob "$glob"
17 done \
18 | grep -xiE '.*\.jpe?g|.*\.png|.*\.gif' \
19 | while read attachment; do
20   case $attachment in
21     */*)
22       printf '<a href="%s"><img src="%s"></a>' \
23              "${attachment%/*}/[attachment]/${attachment##*/}" "${attachment}"
24       ;;
25     *)
26       printf '<a href="%s"><img src="%s"></a>' \
27              "[attachment]/${attachment}" "${attachment}"
28       ;;
29   esac
30 done
31 printf '</div>'