X-Git-Url: http://git.plutz.net/?p=busy;a=blobdiff_plain;f=actions%2Fwikiedit.sh;fp=actions%2Fwikiedit.sh;h=4c614093235f00e11b0ed96c8161a458390849df;hp=0000000000000000000000000000000000000000;hb=f485895094cd72318b46f39689c3ba954eb37411;hpb=904730d1782749bfac15b0344fe5782433f3099b diff --git a/actions/wikiedit.sh b/actions/wikiedit.sh new file mode 100755 index 0000000..4c61409 --- /dev/null +++ b/actions/wikiedit.sh @@ -0,0 +1,31 @@ +#!/bin/zsh +# Copyright 2011 Paul Haensch +# This file is part of Busy +# +# Busy is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Busy is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with Busy. If not, see . + +$ACL_WIKIEDIT || echo "Location: ${proto}://${HTTP_HOST}/?p=Error&i=noaccess\n\n" +$ACL_WIKIEDIT || exit 0 + +info="$(echo "$_GET[\"i\"]" |grep -Ex '[0-9]{10}_[0-9]{3}')" +[ -f "$_DATA/Wiki/$info.lock" ] && rm "$_DATA/Wiki/$info.lock" + +cgi_post +page="$_POST[\"page\"]" +[ -n "$_POST[\"cancel\"]" ] && cancel=true + +[ -z "$cancel" -a -f "$_DATA/Wiki/$info" ] && mv "$_DATA/Wiki/$info" "$_DATA/Wiki/$info.$(date +%s)" +[ -z "$cancel" ] && echo -e "${page}" >"$_DATA/Wiki/$info" + +echo -n "Location: //${HTTP_HOST}/?p=Wiki&i=$info\n\n"