X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=cards%2Fedit_card.sh;h=a29a098ad76f3fe735c54cc5ab2d54c4e5444e62;hb=c921534e9e36d19a10b23c148e915c90e1b05edb;hp=6b62395ecb532936f99ae6189d51506e9ee62c47;hpb=49684847423663ebfbe68952549ad98746f4ebad;p=lobster diff --git a/cards/edit_card.sh b/cards/edit_card.sh index 6b62395..a29a098 100755 --- a/cards/edit_card.sh +++ b/cards/edit_card.sh @@ -17,20 +17,20 @@ # 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" - REDIRECT "/cards/?o=${order}&f=${filter}&e=${card}" +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}" + REDIRECT "/cards/?o=${order}&f=${filter}#${card#/}" fi