]> git.plutz.net Git - shellwiki/blob - macros/pagelist
Merge commit '1b5b1676f9f6869aec5cd141a9670e12ccd28b5d'
[shellwiki] / macros / pagelist
1 #!/bin/sh
2
3 . "$_EXEC/cgilite/cgilite.sh"
4 . "$_EXEC/acl.sh"
5 . "$_EXEC/tools.sh"
6
7 dir="${1:-./}"
8 depth="${2:-1}"
9
10 printf '<ul class="pagelist">\n'
11   page_glob "$dir" \
12   | while read -r glob; do
13     printf %s\\n "$glob"
14     page_children "$glob" "$((depth - 1))"
15   done \
16   | while read -r page; do
17     pagedir="$(page_abs "$page")"
18     [ -f "$_DATA/pages/${pagedir}/#page.md" -o \
19       -f "$_EXEC/pages/${pagedir}/#page.md" ] \
20     && acl_read "$pagedir" \
21     && printf '<li><a href="%s">%s</a></li>' "$(HTML "$page")" "$(HTML "$page")"
22   done
23 printf '</ul>\n'