ref: c3c6d0a991e8c55022d6d405719198a6291cb3b1
parent: e3a512abceedcc9f39194e76e23a0a8e23cbc778
author: uriel <uriel@engel.se.cat-v.org>
date: Sat Jan 24 02:11:39 EST 2009
Add some comments and replace get_post_args with load_post_args
--- a/apps/bridge/app.rc
+++ b/apps/bridge/app.rc
@@ -1,4 +1,5 @@
fn bridge_init {
+ # XXX: Should avoid running for 404s, dir lists, etc.
if(! ~ $#enable_comments 0) {
ll_add handlers_body_foot bridge_body_foot
if(get_post_args comment_text) {
@@ -19,9 +20,10 @@
}
umask 002
- mkdir -m 775 -p $d
- echo $u > $d/user
- echo $comment_text > $d/body
+ if(mkdir -m 775 -p $d) { # Rudimentary perm checking
+ echo $u > $d/user
+ echo $comment_text > $d/body
+ }
}
}
--- a/bin/cgilib.rc
+++ b/bin/cgilib.rc
@@ -186,11 +186,10 @@
# Check loggin status, if called with group arg we check membership too
fn check_user {
if(! get_user)
- status='Not logged in:' $status
- if not if(~ $#1 1 && ! grep -s '^'^$logged_user^'$' etc/groups/$1)
- status=User $logged_user not in group $1
- if not
- status=()
+ _status='Not logged in:' $status
+ if not if(! ~ $#* 0 && ! grep -s '^'^$logged_user^'$' etc/groups/$*)
+ _status=User $logged_user not in groups $*
+ status=$_status
}
# If not logged in, try to get user login info from POST or from cookie
--- a/bin/werc.rc
+++ b/bin/werc.rc
@@ -98,7 +98,8 @@
if not if(test -f $local_path.txt)
handler_body_main=(txt_handler $local_path.txt)
- # Apps, XXX: Maybe we should check that $enabled_apps exist in $werc_apps.
+ # XXX Should check that $enabled_apps exist in $werc_apps?
+ # XXX Should split init of apps that provide main handler (eg., blog) and apps that don't (eg., comments)?
if(! ~ $#enabled_apps 0)
for(a in $enabled_apps)
$a^'_init'
@@ -162,7 +163,7 @@
# Hack: preload post data so we can access it from templates where cgi's stdin is not accesible
if(~ $REQUEST_METHOD POST) {
- get_post_args
+ load_post_args
login_user
}
--- a/lib/_debug.tpl
+++ b/lib/_debug.tpl
@@ -1,6 +1,29 @@
-<pre>
+% if(! ~ $#debug_shell 0) {
+<form method="POST" name="prompt">
+<input type="text" name="command" />
+<input type="submit" Value="Run" />
+</form>
+<script language="javascript"><!--
+document.prompt.command.focus()
+//--></script>
+
+%{
+fn evl {
+ # Buffering is probably messing this up:
+ #rc -c 'flag x +;{'^$post_arg_command'} |[2] awk ''{print ">> "$0}'''
+ rc -c 'flag x +;'^$post_arg_command
+}
+ if(! ~ $#post_arg_command 0 && ! ~ $#post_arg_command '') {
+ echo '<hr /><pre>'
+ evl | escape_html |[2] awk '{print "<b>"$0"</b>"}'
+ echo '</pre>'
+ }
+%}
+% }
+
+<hr /><pre>
% env | escape_html
----------------------
+</pre><hr />
+
% umask
-</pre>
--- a/lib/_users/login.tpl
+++ b/lib/_users/login.tpl
@@ -1,13 +1,14 @@
-%{
-
-if(check_user)
- echo 'You are logged in as' $logged_user
-if not if (~ $REQUEST_METHOD POST)
- echo 'Login failed!'
-
-%}
+<h1>User login</h1>
+<br />
+% if(check_user) {
+ You are logged in as: <b>%($logged_user%)</b>
+% }
+% if not {
+% if (~ $REQUEST_METHOD POST)
+% echo 'Login failed!'
<form method="POST">
User name: <input type="text" name="user_name" /><br />
User password: <input type="password" name="user_password" /><br />
<input name="s" type="submit" value="Login" />
</form>
+% }