]> git.plutz.net Git - busy/blob - actions/introedit.sh
cleared HTTP syntax in Location forward
[busy] / actions / introedit.sh
1 #!/bin/zsh
2 # Copyright 2011 - 2014 Paul Haensch
3 # This file is part of Busy
4 #
5 # Busy is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU Affero General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # Busy is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU Affero General Public License for more details.
14 #
15 # You should have received a copy of the GNU Affero General Public License
16 # along with Busy.  If not, see <http://www.gnu.org/licenses/>.
17
18
19 info="$(echo -E "$_GET[\"i\"]" |grep -Ex 'intro|news|[0-9]{10}_[0-9]{3}')"
20
21 case "$info" in
22   news)
23     $ACL_ADDNEWS \
24     && file="$(date +%s)_$(apg -M N -a 1 -n 1 -m 3 -x 3).news" \
25     || info=''
26     ;;
27   intro)
28     $ACL_EDITINTRO \
29     && file="intro" \
30     || info=''
31     ;;
32   *) $ACL_EDITNEWS \
33      && file="${info}.news" \
34      || info=''
35 esac
36
37 [ -n "$info" ] || echo -n "Location: ?p=Error&i=noaccess\n\n"
38 [ -n "$info" ] || exit 0
39
40 cgi_post
41
42 [ -z "$_POST[\"cancel\"]" ] && echo -E "$_POST[\"text\"]" >"$_DATA/Home/${file}"
43
44 echo -n "Location: ${HTTP_REFERER}#news_${info}\n\n"