FILTER="$(GET f)"
SEARCH="$(GET s)"
-ORDER="$(GET o |grep -m1 -axE 'Date|Name|Length' || printf Name)"
+ORDER="$(GET o |grep -m1 -axE 'Date|Name|Length|Group' || printf Name)"
LISTSIZE="$(COOKIE pagesize |grep -m1 -axE '[1-9][0-9]*' || printf 50)"
ITEM="$(PATH "${PATH_INFO#/}")"
ACTION="$(GET a)"
case $ACTION in
setprefs)
- SET_COOKIE +$((86400 * 90)) pagesize="$(POST pagesize |grep -m1 -axE '[1-9][0-9]*' || printf 50)"
- SET_COOKIE +$((86400 * 90)) mode="$(POST mode |grep -m1 -axE 'browse|index' || printf browse)"
- SET_COOKIE +$((86400 * 90)) fakemp4="$(POST fakemp4 |grep -m1 -axE 'yes' || printf no)"
+ SET_COOKIE +$((86400 * 90)) pagesize="$(POST pagesize |grep -m1 -axE '[1-9][0-9]*' || printf 50)"
+ SET_COOKIE +$((86400 * 90)) mode="$(POST mode |grep -m1 -axE 'browse|index' || printf browse)"
+ SET_COOKIE +$((86400 * 90)) fakemp4="$(POST fakemp4 |grep -m1 -axE 'yes' || printf no)"
+ SET_COOKIE +$((86400 * 90)) downscale="$(POST downscale |grep -m1 -axE 'yes' || printf no)"
+ [ "$(POST index)" = "update" ] && touch -cd @0 "${_DATA}/.index/meta"
REDIRECT "$(POST ref)"
;;
bookmark)
;;
delete)
;;
- download) . "$_EXEC/cgilite/file.sh"
+ download)
+ . "$_EXEC/cgilite/file.sh"
fakemp4="$(COOKIE fakemp4)"
- FILE "$_DATA/$ITEM" "$([ "$fakemp4" = yes ] && printf 'video/mp4')"
+ downscale="$(COOKIE downscale)"
+ downfile="$_DATA/${ITEM%/*}/.transcode/${ITEM%.*}.480p.webm"
+ if [ "$downscale" = yes -a -f "$downfile" ]; then
+ FILE "$downfile" "$([ "$fakemp4" = yes ] && printf 'video/mp4')"
+ else
+ FILE "$_DATA/$ITEM" "$([ "$fakemp4" = yes ] && printf 'video/mp4')"
+ fi
;;
*) . "$_EXEC/view.sh"
esac