X-Git-Url: http://git.plutz.net/?p=busy;a=blobdiff_plain;f=actions%2Flock.sh;fp=actions%2Flock.sh;h=dadfd1ff832719f3515989d74c719fd787270660;hp=0000000000000000000000000000000000000000;hb=f485895094cd72318b46f39689c3ba954eb37411;hpb=904730d1782749bfac15b0344fe5782433f3099b diff --git a/actions/lock.sh b/actions/lock.sh new file mode 100755 index 0000000..dadfd1f --- /dev/null +++ b/actions/lock.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: //${HTTP_HOST}/?p=Error&i=noaccess\n\n" +$ACL_WIKIEDIT || exit 0 + +page="$(echo -E "$_GET[\"p\"]" |egrep -Ex 'Wiki')" +edit="$(echo -E "$_GET[\"e\"]" |egrep -Ex '[0-9]{10}_[0-9]{3}(_[0-9]{1,4})?')" + +case "$page" in + Wiki) [ -f "$_DATA/Wiki/${edit}" ] && echo "${USER}:$(($(date +%s)+600))" >"$_DATA/Wiki/${edit}.lock" + echo -n "Location: //${HTTP_HOST}/?p=Wiki&e=$edit\n\n" + ;; + *) echo -n "Location: //${HTTP_HOST}/?p=Error&r=input&$page\n\n" + exit 0 + ;; +esac