Merge.
This commit is contained in:
commit
2573838f1b
6 changed files with 49 additions and 65 deletions
|
|
@ -11,23 +11,27 @@ fn conf_enable_comments {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn bridge_init {
|
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'
|
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
|
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) {
|
if(check_user $groups_allowed_comments || {~ $#logged_user 0 && ! ~ $#allow_new_user_comments 0}) {
|
||||||
ll_add handlers_body_foot template apps/bridge/foot.tpl
|
|
||||||
|
|
||||||
if(~ $REQUEST_METHOD POST && mk_new_comment $comments_dir)
|
if(~ $#post_arg_bridge_post 1) {
|
||||||
post_redirect $base_url^$post_arg_document_uri
|
ll_add handlers_body_foot template apps/bridge/foot.tpl
|
||||||
if not
|
|
||||||
saved_comment_text=$post_arg_comment_text
|
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.'
|
ll_add handlers_body_foot echo '<hr /><p>To post a comment you need to <a href="/_users/login">login</a> first.'
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,10 @@
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
% notices_handler
|
% notices_handler
|
||||||
% # XXX should post to bridge_post or similar
|
|
||||||
<form action="" method="post">
|
<form action="" method="post">
|
||||||
<textarea name="comment_text" id="comment_text" cols="80" rows="16">%($"saved_comment_text%)</textarea>
|
<textarea name="comment_text" id="comment_text" cols="80" rows="16">%($"saved_comment_text%)</textarea>
|
||||||
<br />
|
<br />
|
||||||
<input type="hidden" name="document_uri" value="%($req_path%)" />
|
<input type="submit" name="bridge_post" value="Post a comment" />
|
||||||
<input type="submit" name="post_comment" value="Post a comment" />
|
|
||||||
|
|
||||||
% if(~ $#logged_user 0 && ! ~ $#allow_new_user_comments 0) {
|
% if(~ $#logged_user 0 && ! ~ $#allow_new_user_comments 0) {
|
||||||
<label>New user name:
|
<label>New user name:
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,31 @@
|
||||||
fn conf_enable_wiki {
|
fn conf_enable_wiki {
|
||||||
enable_wiki=yes
|
enable_wiki=yes
|
||||||
wiki_editors_group=$*
|
wiki_editors_groups=$*
|
||||||
conf_enable_app dirdir
|
conf_enable_app dirdir
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
fn dirdir_init {
|
fn dirdir_init {
|
||||||
if(! ~ $#enable_wiki 0 && check_user $wiki_editors_group) {
|
if(! ~ $#enable_wiki 0 && check_user $wiki_editors_groups && test -f $local_path.md) {
|
||||||
if(test -f $local_path.md)
|
dirdir_file=$local_path.md
|
||||||
ll_add handlers_bar_left dirdir_controls
|
dirdir_dir=$dirdir_file^'_werc/dirdir/'
|
||||||
|
|
||||||
|
if(~ $#post_arg_dirdir_save 1 && ! ~ $"post_arg_edit_text '') {
|
||||||
|
|
||||||
if(~ $req_path */dirdir_edit && ~ $REQUEST_METHOD POST) {
|
dirdir_verdir=$dirdir_dir/^`{date -n}^/
|
||||||
get_post_args edit_wiki_page edit_text edit_preview edit_save
|
mkdir -p $dirdir_verdir
|
||||||
# XXX SECURITY! should sanitize input and ensure we only edit files
|
|
||||||
# we are allowed. This is a start, but should be way more careful
|
# XXX Use a tmp file and mv(1) to ensure updates are atomic?
|
||||||
edit_file = `{echo $sitedir/$edit_wiki_page|sed -e 's/\.\.*/./g' -e 's,/$,/index,' | sed 's/$/.md/'}
|
echo $logged_user > $dirdir_verdir/author
|
||||||
tpl=`{get_lib_file dirdir/edit.tpl apps/dirdir/edit.tpl}
|
echo $post_arg_edit_text > $dirdir_verdir/data
|
||||||
handler_body_main=(tpl_handler $tpl)
|
echo $post_arg_edit_text > $dirdir_file
|
||||||
|
|
||||||
|
post_redirect $base_url^$req_path
|
||||||
|
#notify_notes='Saved <a href="'$"req_path'">'$"req_path'</a>!'
|
||||||
}
|
}
|
||||||
|
if not if(~ $#post_arg_dirdir_edit 1 || ~ $#post_arg_dirdir_preview 1)
|
||||||
|
handler_body_main=(tpl_handler `{get_lib_file dirdir/edit.tpl apps/dirdir/edit.tpl} )
|
||||||
|
if not if(! ~ $REQUEST_METHOD POST)
|
||||||
|
ll_add handlers_bar_left tpl_handler apps/dirdir/sidebar_controls.tpl
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn dirdir_controls {
|
|
||||||
# Display 'Edit', 'History', etc, links
|
|
||||||
echo '<form action="dirdir_edit" method="POST">'
|
|
||||||
echo '<input type="hidden" name="edit_wiki_page" value="'^$req_path^'" />'
|
|
||||||
echo '<input type="submit" name="" value="Edit page" />'
|
|
||||||
echo '</form>'
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -1,46 +1,25 @@
|
||||||
% if(~ $"edit_save '') {
|
|
||||||
<div>
|
<div>
|
||||||
<h1>Editing %($edit_wiki_page%)</h1>
|
<h1>Editing: <a href="%($req_path%)">%($req_path%)</a></h1>
|
||||||
<br />
|
<br />
|
||||||
<form action="dirdir_edit" method="post">
|
<form action="" method="post">
|
||||||
<input type="hidden" name="edit_wiki_page" value="%($edit_wiki_page%)">
|
|
||||||
<textarea name="edit_text" id="edit_text" cols="80" rows="43">%{
|
<textarea name="edit_text" id="edit_text" cols="80" rows="43">%{
|
||||||
# FIXME Extra trailing new lines get added to the content somehow, should avoid it.
|
# FIXME Extra trailing new lines get added to the content somehow, should avoid it.
|
||||||
if(~ $#edit_text 0 && test -f $edit_file)
|
if(~ $#post_arg_edit_text 0 && test -f $dirdir_file)
|
||||||
cat $edit_file | escape_html
|
cat $dirdir_file | escape_html
|
||||||
if not
|
if not
|
||||||
echo -n $edit_text | escape_html
|
echo -n $post_arg_edit_text | escape_html
|
||||||
|
|
||||||
%}</textarea>
|
%}</textarea>
|
||||||
<br />
|
<br />
|
||||||
<input type="submit" name="edit_save" value="Save"/>
|
<input type="submit" name="dirdir_save" value="Save"/>
|
||||||
<input type="submit" name="edit_preview" value="Preview" />
|
<input type="submit" name="dirdir_preview" value="Preview" />
|
||||||
<small>DirDir documents are written using <a href="http://daringfireball.net/projects/markdown/syntax">Markdown syntax</a>.</small>
|
<small>DirDir documents are written using <a href="http://daringfireball.net/projects/markdown/syntax">Markdown syntax</a>.</small>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
% }
|
|
||||||
|
|
||||||
% if(! ~ $"edit_preview '') {
|
% if(! ~ $"post_arg_dirdir_preview '') {
|
||||||
<H2>Preview:</H2>
|
<H2>Preview:</H2>
|
||||||
<div id="preview">
|
<div id="preview">
|
||||||
% echo $edit_text | $formatter
|
% echo $post_arg_edit_text | $formatter
|
||||||
</div>
|
</div>
|
||||||
<hr /><hr />
|
|
||||||
% }
|
% }
|
||||||
% if not if(! ~ $"edit_save '') {
|
|
||||||
%{
|
|
||||||
dirdir_dir = $edit_file^'_werc/dirdir/'
|
|
||||||
|
|
||||||
if(! test -d $dirdir_dir)
|
|
||||||
mkdir -p $dirdir_dir
|
|
||||||
|
|
||||||
dirdir_verdir = $dirdir_dir/`{date -n}^/
|
|
||||||
mkdir $dirdir_verdir
|
|
||||||
|
|
||||||
echo $logged_user > $dirdir_verdir/author
|
|
||||||
echo $edit_text > $dirdir_verdir/data
|
|
||||||
echo $edit_text > $edit_file
|
|
||||||
%}
|
|
||||||
<h1>Saved <a href="%($edit_wiki_page%)">%($edit_wiki_page%)</a>!</h1>
|
|
||||||
% }
|
|
||||||
|
|
||||||
|
|
|
||||||
3
apps/dirdir/sidebar_controls.tpl
Normal file
3
apps/dirdir/sidebar_controls.tpl
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<form action="" method="POST">
|
||||||
|
<input type="submit" name="dirdir_edit" value="Edit page" />
|
||||||
|
</form>
|
||||||
|
|
@ -2,6 +2,6 @@ masterSite=default.cat-v.org
|
||||||
siteTitle='werc'
|
siteTitle='werc'
|
||||||
siteSubTitle='Bringing minimalism and sanity to the web'
|
siteSubTitle='Bringing minimalism and sanity to the web'
|
||||||
conf_enable_comments
|
conf_enable_comments
|
||||||
conf_enable_wiki admin
|
conf_enable_wiki
|
||||||
|
|
||||||
ll_add handlers_body_head echo '<div style="text-align:right"><script type="text/javascript" src="http://www.reddit.com/r/programming/button.js?t=1"></script></div>'
|
ll_add handlers_body_head echo '<div style="text-align:right"><script type="text/javascript" src="http://www.reddit.com/r/programming/button.js?t=1"></script></div>'
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue