3 # Copyright 2023 Paul Hänsch
5 # Permission to use, copy, modify, and/or distribute this software for any
6 # purpose with or without fee is hereby granted, provided that the above
7 # copyright notice and this permission notice appear in all copies.
9 # THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
12 # SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15 # IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18 local path="${1:-${PATH_INFO}}"
20 # Get directory part of PATH_INFO
24 [ "$path" = / ] && break
27 if ! acl_read "$path"; then
29 elif [ -f "$_DATA/pages/$path/#page.md" ]; then
30 pagefile="$_DATA/pages/$path/#page.md"
31 elif [ -f "$_EXEC/pages/$path/#page.md" ]; then
32 pagefile="$_EXEC/pages/$path/#page.md"
39 /^%css([\t ]+.*)?$/bCSS;
46 /^(%[ \t]+|%css[ \t]+|[ \t]+)[^ \t\r]+$/bCSS;
47 /^(%[ \t]*|%css[ \t]*)$/bCSS;
48 ' <"$pagefile")${BR}${css}"
54 PAGE_CSS="$(css "${PATH_INFO}")"