X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=newdate.sh;h=2efa7485a44a73e715318c3bdf47bc874db5ec83;hb=22d77b49555ed424e7d9064b06f37b8caa83f914;hp=9c5a1e71cb9dd654c55cc2642eb46f5ae8963035;hpb=a193b5186dd4d330110f120fbc23277e426679f9;p=webpoll diff --git a/newdate.sh b/newdate.sh index 9c5a1e7..2efa748 100755 --- a/newdate.sh +++ b/newdate.sh @@ -1,5 +1,23 @@ #!/bin/sh +id="${PATH_INFO%/*}"; id="${id#/}" +admin=${PATH_INFO##*/} +file="$_DATA/$id" + +if [ "$(DBM "$file" get adminkey)" != "$admin" ]; then + page_home; + return 0 + # REDIRECT "$_BASE/#ERRO_INVALIDKEY" +elif expr match "$bookmarks" ".*${id}/${admin}.*" >/dev/null; then + : +elif expr match "$bookmarks" ".*${id}.*" >/dev/null; then + bookmarks="$(printf %s "$bookmarks" |tr \ \\n |grep -vxF "${id}")" + bookmarks="$(printf %s "$bookmarks" |tr \\n \ )" + SET_COOKIE +$((182 * 86400)) bookmarks="${bookmarks}${bookmarks:+ }${id}/${admin}" Path="${_BASE}/" +elif [ "$bookmarks" ]; then + SET_COOKIE +$((182 * 86400)) bookmarks="${bookmarks} ${id}/${admin}" Path="${_BASE}/" +fi + fs_timeofday() { local todall="$(DBM "$file" get todall)" time c=0 cat <<-EOF @@ -50,22 +68,6 @@ fs_splittimes() { EOF } -id="${PATH_INFO%/*}"; id="${id#/}" -admin=${PATH_INFO##*/} -file="$_DATA/$id" - -if [ "$(DBM "$file" get adminkey)" != "$admin" ]; then - REDIRECT "$_BASE/#ERRO_INVALIDKEY" -elif expr match "$bookmarks" ".*${id}/${admin}.*" >/dev/null; then - : -elif expr match "$bookmarks" ".*${id}.*" >/dev/null; then - bookmarks="$(printf %s "$bookmarks" |tr \ \\n |grep -vxF "${id}")" - bookmarks="$(printf %s "$bookmarks" |tr \\n \ )" - SET_COOKIE +$((182 * 86400)) bookmarks="${bookmarks}${bookmarks:+ }${id}/${admin}" Path="${_BASE}/" -elif [ "$bookmarks" ]; then - SET_COOKIE +$((182 * 86400)) bookmarks="${bookmarks} ${id}/${admin}" Path="${_BASE}/" -fi - if [ "$REQUEST_METHOD" = POST ]; then month="$(POST month |grep -m 1 -xE '[0-9]{4}-(0[1-9]|1[012])')" todremove="$(POST todremove |grep -m 1 -xE '[0-9]+')"