X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=poll.sh;h=7ab0e9d58dea7414449584d78dc0046e9fcb48b9;hb=e59a6e2a6ebf4dbdd12d03cbd2ef91fd0acaad6d;hp=de5b614c74321c93521a6ac0e1bb3c2e08f45d05;hpb=ed5aacc277bd81abe427a10080de96d8d6e987c3;p=webpoll
diff --git a/poll.sh b/poll.sh
index de5b614..7ab0e9d 100644
--- a/poll.sh
+++ b/poll.sh
@@ -1,10 +1,15 @@
#!/bin/sh
+. "${_EXEC}/comments.sh"
+
id="$(checkid "${PATH_INFO#/}")"
file="${_DATA}/${id}"
#cancel if poll is invalid
-[ "$id" -a -f "$file" ] || REDIRECT "$_BASE/"
+if [ ! "$id" -o ! -f "$file" ]; then
+ page_home;
+ return 0
+fi
if expr match "$bookmarks" ".*${id}.*" >/dev/null; then
:
@@ -220,19 +225,24 @@ else
pagename="$(pagename "$id")"
yield_page "$pagename" poll <<-EOF
- [form method=POST
+ [main
[section .description
[h1 .title $(HTML "$pagename")]
$(DBM "$file" get description |markdown)
]
- $(table_poll || printf '[p Poll parameters are invalid]')
- $(if [ "$admin" ]; then
- printf '[section .bookmark You have bookmarked the admin page of this poll: [a href="./%s" modify poll]]' "$(URL ${id}/${admin})"
- elif [ "$bookmarks" ]; then
- printf '[section .bookmark This poll has been bookmarked and is accessible via a link on the front page.]'
- else
- printf '[section .bookmark Polls are accessible only via their URL. You can set a Cookie to bookmark all polls you visit. Bookmarked polls will be listed on the frontpage.
[submit "bookmark" "add" Set Cookie]]'
- fi)
+ [form method=POST
+ $(table_poll || printf '[p Poll parameters are invalid]')
+
+ $(if [ "$admin" ]; then
+ printf '[section .bookmark You have bookmarked the admin page of this poll: [a href="./%s" modify poll]]' "$(URL ${id}/${admin})"
+ elif [ "$bookmarks" ]; then
+ printf '[section .bookmark This poll has been bookmarked and is accessible via a link on the front page.]'
+ else
+ printf '[section .bookmark Polls are accessible only via their URL. You can set a Cookie to bookmark all polls you visit. Bookmarked polls will be listed on the frontpage.
[submit "bookmark" "add" Set Cookie]]'
+ fi)
+ ]
+
+ $(w_comments)
]
EOF
fi