ref: 2c8139eb9e6efd5712116299ad0f5ccd0bb4b153
parent: ab0ce13ca975cc147dec86c0f3e89f7fd09329a7
author: uriel <[email protected]>
date: Thu Feb 26 06:42:20 EST 2009
Make bridge app more correct: only activated when GET-ing pages which can have comments and don't get confused by other apps POSTs. Simplify code along the way.
--- a/apps/bridge/app.rc
+++ b/apps/bridge/app.rc
@@ -11,23 +11,27 @@
}
fn bridge_init {
- if(~ $#enable_comments 1) {
-
+ if(~ $#enable_comments 1 && ! ~ `{ls $local_path.$comment_file_types >[2]/dev/null|wc -l} 0) {
+
comments_dir=$sitedir$req_path'_werc/comments'
- if(test -d $comments_dir)
+ if(~ $REQUEST_METHOD GET && test -d $comments_dir)
ll_add handlers_body_foot template apps/bridge/comments_list.tpl
- if({ check_user $groups_allowed_comments || {~ $#logged_user 0 && ! ~ $#allow_new_user_comments 0} } && ! ~ `{ls $local_path.$comment_file_types >[2]/dev/null|wc -l} 0) {
- ll_add handlers_body_foot template apps/bridge/foot.tpl
+ if(check_user $groups_allowed_comments || {~ $#logged_user 0 && ! ~ $#allow_new_user_comments 0}) {
- if(~ $REQUEST_METHOD POST && mk_new_comment $comments_dir)
- post_redirect $base_url^$post_arg_document_uri
- if not
- saved_comment_text=$post_arg_comment_text
+ if(~ $#post_arg_bridge_post 1) {
+ ll_add handlers_body_foot template apps/bridge/foot.tpl
+
+ if(mk_new_comment $comments_dir)
+ post_redirect $base_url^$req_path
+ if not
+ saved_comment_text=$post_arg_comment_text
+ }
+ if not if(~ $REQUEST_METHOD GET)
+ ll_add handlers_body_foot template apps/bridge/foot.tpl
}
- if not
+ if not if(~ $REQUEST_METHOD GET)
ll_add handlers_body_foot echo '<hr /><p>To post a comment you need to <a href="/_users/login">login</a> first.'
-
}
}
--- a/apps/bridge/foot.tpl
+++ b/apps/bridge/foot.tpl
@@ -1,12 +1,10 @@
<hr />
% notices_handler
-% # XXX should post to bridge_post or similar
<form action="" method="post">
<textarea name="comment_text" id="comment_text" cols="80" rows="16">%($"saved_comment_text%)</textarea>
<br />
- <input type="hidden" name="document_uri" value="%($req_path%)" />
- <input type="submit" name="post_comment" value="Post a comment" />
+ <input type="submit" name="bridge_post" value="Post a comment" />
% if(~ $#logged_user 0 && ! ~ $#allow_new_user_comments 0) {
<label>New user name: