diff options
Diffstat (limited to 'article/entry')
-rw-r--r-- | article/entry | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/article/entry b/article/entry index c72a79a..3a933a7 100644 --- a/article/entry +++ b/article/entry @@ -1,2 +1,17 @@ #!/bin/bash -cat $base/data/404.html +after () { test -z "${2##*$1*}" && echo -n "${2#*$1}"; } +if test -z "$1" +then + # TODO: deep dark magic of constructing a list of articles + cat $base/data/404.html +elif test -e "list/${1%%/*}" +then + if test -n "$(after / $1)" + then cat $base/data/404.html + else + export title="$(vsvs-extract 'echo "$value"' "list/${1%%/*}/title")" + export content="$(vsvs-extract 'echo "$value"' "list/${1%%/*}/content")" + vsvs-extract 'echo "$value"' "template/page" | shelter + fi +else cat $base/data/404.html +fi |