X-Git-Url: http://git.plutz.net/?p=busy;a=blobdiff_plain;f=write%2Flock.cgi;h=3c2866db905178beeaf3a6c64ec261832cd9caea;hp=41c095119258bc473be06ef8b7099f7e6de6125b;hb=470dbac80eb2334fdb04a85e448d6194140d250d;hpb=7d60f1ac8a996344f14edfcf751d965818df43d7 diff --git a/write/lock.cgi b/write/lock.cgi index 41c0951..3c2866d 100755 --- a/write/lock.cgi +++ b/write/lock.cgi @@ -15,18 +15,19 @@ # You should have received a copy of the GNU Affero General Public License # along with Busy. If not, see . +[ "$HTTPS" = "on" ] && proto=https || proto=http +. ../auth/acl.sh +$ACL_WIKIEDIT || echo "Location: ${proto}://${HTTP_HOST}/?p=Error&i=noaccess\n\n" +$ACL_WIKIEDIT || exit 0 + page=$(egrep -o '(^|&)p=(QandA|Locations|Wiki)(&|$)' <<<"${QUERY_STRING}" |sed 's,p=,,;s,&,,g') edit=$(egrep -o '(^|&)e=[0-9]{10}_[0-9]{3}(_[0-9]{1,4})?(&|$)' <<<"${QUERY_STRING}" |tr -d 'e=&') case "$page" in - QandA) [ -f "../QandA/${edit}.qstn" ] && echo "${REMOTE_USER}:$(($(date +%s)+600))" >"../QandA/${edit}.lock" - ;; - Locations) [ -f "../Locations/${edit}.jpg" ] && echo "${REMOTE_USER}:$(($(date +%s)+600))" >"../Locations/${edit}.lock" - ;; Wiki) [ -f "../Wiki/${edit}" ] && echo "${REMOTE_USER}:$(($(date +%s)+600))" >"../Wiki/${edit}.lock" ;; *) echo -n "Location: http://$host/?p=Error&r=input&$page\n\n" exit 0 ;; esac -echo -n "Location: http://${HTTP_HOST}/?${QUERY_STRING}\n\n" +echo -n "Location: ${proto}://${HTTP_HOST}/?${QUERY_STRING}\n\n"