3 # Copyright 2014, 2021 Paul Hänsch
5 # This file is part of Confetti.
7 # Confetti is free software: you can redistribute it and/or modify
8 # it under the terms of the GNU Affero General Public License as published by
9 # the Free Software Foundation, either version 3 of the License, or
10 # (at your option) any later version.
12 # Confetti is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU Affero General Public License for more details.
17 # You should have received a copy of the GNU Affero General Public License
18 # along with Confetti. If not, see <http://www.gnu.org/licenses/>.
21 . "$_EXEC"/session_lock.sh
23 uid="$(timeid)$(randomid)" # 32 Octets UID, starting with timestamp
26 tzid="$(cat /etc/timezone)"
27 tstamp="$(TZ="$tzid" date +%Y%m%dT%H%M%S)"
29 coursefile="$_DATA/ical/$course"
31 if tempfile="$(SLOCK "$coursefile")"; then
32 cat >"$tempfile" <<-EOF
35 PRODID:Berlin RAW Confetti
38 DTSTAMP:TZID=${tzid}:${tstamp}
39 DTSTART:TZID=${tzid}:${tstamp}
47 REDIRECT "${_BASE}/courses/?e=${course}"
49 SET_COOKIE session message="EDITLOCK"
50 REDIRECT "${_BASE}/courses/"