X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=index.cgi;h=465a98994140c6b1919090333297ca10e0320eca;hb=4d35c26aaac2a8738a8831118671d7a70dca827c;hp=b1b2c2dd2ab11cc4a0c7b8e7cc332503579ad41b;hpb=f9cfcde441afed9d6db96e201935b6208903046d;p=shellwiki diff --git a/index.cgi b/index.cgi index b1b2c2d..465a989 100755 --- a/index.cgi +++ b/index.cgi @@ -61,9 +61,12 @@ wiki() { mkdir -p -- "$_DATA/pages/$page/" # Macros expect to find page directory as working dir ( cd -- "$_DATA/pages/$page/"; - md <"$mdfile" |tee -- "${cache}.$$" + sed -E '1,20{ /^%[a-z]+/d; }' "$mdfile" \ + | md |tee -- "${cache}.$$" ) - mv -- "${cache}.$$" "${cache}" + grep -q '^%nocache' "$mdfile" \ + && rm -- "${cache}.$$" \ + || mv -- "${cache}.$$" "${cache}" fi } @@ -71,13 +74,11 @@ case "${PATH_INFO}" in /"[.]"/*) FILE "${_EXEC}/${PATH_INFO#/\[.\]}" ;; - */) + /|*[^]]/) theme_page "${PATH_INFO}" ;; */"[login]") - [ "$USER_NAME" ] \ - && REDIRECT "./" \ - || theme_login + theme_login ;; */"[register]") theme_register @@ -85,7 +86,8 @@ case "${PATH_INFO}" in */"#"*) : # TODO: Invalid page name ;; + *) + . "$_EXEC/page_edit.sh" + . "$_EXEC/attachment.sh" esac -. "$_EXEC/page_edit.sh" -. "$_EXEC/attachment.sh"