]> git.plutz.net Git - bookman/blobdiff - bookmarks.sh
start of complete rewrite
[bookman] / bookmarks.sh
diff --git a/bookmarks.sh b/bookmarks.sh
deleted file mode 100644 (file)
index 212ac8f..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/bin/zsh
-bdir="bookmarks/${REMOTE_USER}"
-icodir=icodir
-alias wget="/usr/bin/wget -T 5 -t 1 -q -U ''"
-
-if [ -n "${CONTENT_LENGTH}" -a "${CONTENT_LENGTH}" -gt 0 ]; then
-  (head -c "${CONTENT_LENGTH}" | sed 's:&:\n:g'; echo) >$bdir/$(date +%s)
-fi
-
-moveName="$(echo -en "$(sed -rn '/mn=.+&mc=.+/{s:(^|.+&)mn=(.+)(&.+|$):\2:;s:\+: :g;s:%:\\x:g;p}' <<<"$QUERY_STRING")")"
-moveCont="$(echo -en "$(sed -rn '/mn=.+&mc=.+/{s:(^|.+&)mc=(.+)(&.+|$):\2:;s:\+: :g;s:%:\\x:g;p}' <<<"$QUERY_STRING")")"
-[ -n "$moveName" -a -n "$moveCont" ] && move=true || move=false
-
-[ -d "$bdir" ] || mkdir -p "$bdir"
-names=$(sed -rn 's:^name=(.*)$:\1:pg' $bdir/$(ls $bdir |tail -n1))
-hidecmd=$(for each in $(echo $names); do echo "try{hide('e_$each');}catch(e){};"; done)
-showcmd=$(for each in $(echo $names); do echo "try{show('d_$each');}catch(e){};"; done)
-
-delFolder=false
-delBookmark=false
-
-echo "
-<form action='index.cgi' method='post' accept-charset='utf-8'>
-  <div style='display:none;'>
-  qs $QUERY_STRING
-  mn $moveName
-  mc $moveCont
-"
-
-cat $bdir/$(ls $bdir |tail -n1) |while read line; do
-  case "$line" in
-    deleteFolder=*) delFolder=true
-       ;;
-    deleteBookmark=*) delBookmark=true
-       ;;
-    folder=*) echo '<!-- FOLDER -->'
-       fId=$(sed 's:^folder=::' <<<"$line")
-       [ -z "$fId" ] && fId='###'
-       fName="$(echo -ne "$(sed 's:+: :g;s:%:\\x:g' <<<"$fId")")"
-       $delFolder || echo "
-         <input type='hidden' name='title' value='New Bookmark'>
-         <input type='submit' name='content' value='New Bookmark'>
-       </div><div class='folder'>
-         <div class='fName' id='fName_$fId'>
-           <a href='#' onclick='javascript:hide(\"fName_$fId\");show(\"efName_$fId\")'>&rarr;</a>$fName
-         </div><div class='efName' id='efName_$fId'>
-           <a href='#' onclick='javascript:hide(\"efName_$fId\");show(\"fName_$fId\")'>&larr;</a>
-           <input type='submit' value='Rename'><input type='submit' name='deleteFolder' value='Remove'>
-           <input type='text' name='folder' value='$fName'>
-         </div>
-       "
-       delFolder=false
-       $move && echo "
-         <div class='moveButton'>
-           <input type='hidden' name='title' value='$moveName'>
-           <button type='submit' name='content' value='$moveCont'>Move Here</button>
-         </div>
-       "
-       ;;
-    title=*) 
-       bmId=$(sed 's:^title=::' <<<"$line")
-       [ -z "$bmId" ] && bmId='###'
-       bmName="$(echo -ne "$(sed 's:+: :g;s:%:\\x:g' <<<"$bmId")")"
-       ;;
-    content=*)
-       bmLink="$(echo -ne "$(sed 's:^content=::;s:+: :g;s:%:\\x:g' <<<"$line")")"
-       bmBase="$(sed -r 's:^(https?\://[^/]+)/?.*$:\1:' <<<"$bmLink")"
-       bmFav="$(sed -r 's:^(https?\://[^/]+)/?.*$:\1/favicon.ico:' <<<"$bmLink")"
-       bmFavFile="$icodir/$(sed -r 's:^https?\://([^/]+)/?.*$:\1.ico:' <<<"$bmLink")"
-       [ -f "$bmFavFile" ] || (wget -O - "$bmLink" |head -c 4096 |\
-          sed -rn "/<link.*rel=[\"'](shortcut )?icon[\"'].*>/Is:^.*<link.*href=[\"']([^\"']*)[\"'].*$:\1:ip" |\
-          read p && [ -n "$p" ] && (wget -O "$bmFavFile" "$p" || wget -O "$bmFavFile" "$bmBase/$p") ||\
-          wget -O "$bmFavFile" "$bmFav"
-       ) &
-       [ "$bmName" = "$moveName" -a "$bmLink" = "$moveCont" ] && delBookmark=true
-       $delBookmark || echo "
-         <div class='bmDisplay' id='d_$bmId'>
-           <a class='edButton' href='#' onclick='javascript:${hidecmd}${showcmd}show(\"e_$bmId\");hide(\"d_$bmId\");'>&rarr;</a>
-           <img width=16 height=16 src='$bmFavFile'>
-           <a target='_blank' href='$bmLink'>$bmName</a>
-         </div><div class='bmEdit' id='e_$bmId'>
-           <a class='edButton' href='#' onclick='javascript:show(\"d_$bmId\");hide(\"e_$bmId\");'>&larr;</a>
-           <input type='submit' value='Update'><input type='submit' name='deleteBookmark' value='Remove'><br>
-           <a href='?mn=$bmName&mc=$bmLink'>Move Bookmark</a><br>
-           Name: <input type='text' name='title' value='$bmName'><br>
-           Link: <input type='text' name='content' value='$bmLink'>
-         </div>
-       "
-       $delBookmark || ($move && echo "
-         <div class='moveButton'>
-           <input type='hidden' name='title' value='$moveName'>
-           <button type='submit' name='content' value='$moveCont'>Move Here</button>
-         </div>
-       ")
-       delBookmark=false
-       ;;
-    *) echo "<!-- $line -->"
-       ;;
-  esac
-done
-
-echo "
-    <input type='hidden' name='title' value='New Bookmark'>
-    <input type='submit' name='content' value='New Bookmark'>
-  </div>
-  <input type='submit' value='Submit Changes'>
-  <input type='submit' name='folder' value='New Folder'>
-</form>
-"