case "${PATH_INFO}" in
/"[.]"/*)
+ # usually some file related to theme
+ # let file server handle errors
FILE "${_EXEC}/${PATH_INFO#/\[.\]}"
return 0
;;
theme_error 400
return 0
;;
- */\[*\]/*)
+ */\[*\]/*|*/\[*\])
+ # looks like some kind of handler
return 1
;;
*/)
- theme_page "${PATH_INFO}"
+ if [ ! "$(mdfile "$page")" ]; then
+ theme_error 404
+ elif ! acl_read "$page"; then
+ theme_error 403
+ else
+ theme_page "${PATH_INFO}"
+ fi
return 0
;;
esac