X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=cards%2Fedit_card.sh;h=4239cc5968c03b5e58d11a96d0e0ae22f68de41f;hp=6b62395ecb532936f99ae6189d51506e9ee62c47;hb=f0f4a2847ec2fe8226682eee26c902a3b6d64f58;hpb=49684847423663ebfbe68952549ad98746f4ebad diff --git a/cards/edit_card.sh b/cards/edit_card.sh index 6b62395..4239cc5 100755 --- a/cards/edit_card.sh +++ b/cards/edit_card.sh @@ -1,4 +1,4 @@ -#!/bin/zsh +#!/bin/sh # Copyright 2019 Paul Hänsch # @@ -17,19 +17,19 @@ # You should have received a copy of the GNU Affero General Public License # along with Confetti. If not, see . -mkdir -p "${_DATA}/lock" - -card="$(GET card)" -lock="$_DATA/lock/${card}/" -cardfile="$_DATA/vcard/$card" -tempfile="$lock/temp.vcf" +locktimeout=900 +. "$_EXEC"/session_lock.sh +card="$(GET card |PATH)" +cardfile="$_DATA/vcard/${card##*/}" filter="$(REF f)" order="$(REF o)" -if mkdir "$lock" 2>&-; then - cp "$cardfile" "$tempfile" +if tempfile="$(SLOCK "$cardfile" "$locktimeout")"; then REDIRECT "/cards/?o=${order}&f=${filter}&e=${card}" +elif [ -f "$tempfile" ]; then + SET_COOKIE session message="SESSLOCK" + REDIRECT "/cards/?o=${order}&f=${filter}#${card}" else SET_COOKIE session message="EDITLOCK" REDIRECT "/cards/?o=${order}&f=${filter}#${card}"