. "$_EXEC/cgilite/file.sh"
[ -r "$_DATA/$ITEM" ] && FILE "$_DATA/$ITEM" \
|| FILE "$_EXEC/style.css"
+elif [ "$ITEM" = "/stereoview.js" ]; then
+ . "$_EXEC/cgilite/file.sh"
+ FILE "$_EXEC/stereoview.js"
elif [ -f "$_DATA/$ITEM" ]; then
case $ACTION in
tag)
;;
delete)
;;
- *) . "$_EXEC/cgilite/file.sh"
+ download) . "$_EXEC/cgilite/file.sh"
fakemp4="$(COOKIE fakemp4)"
FILE "$_DATA/$ITEM" "$([ "$fakemp4" = yes ] && printf 'video/mp4')"
;;
+ *) . "$_EXEC/view.sh"
esac
elif [ -d "$_DATA/$ITEM" ]; then
case $ACTION in
"$width" "$height" \
"$(printf '%s\n' "${tags#tags=}" \
| sed -r "$UNSTRING"' s;^;,;; s;,+;,;g; s;,$;;;
- :X s;,([^,]+)(,|$); [span .tag \1]\2;; tX;'
+ :X s;,([^,]+)(,|$); [span .tag\n \1]\2;; tX;'
)" "$name" "$link" "$link"
else
printf 'Canning record for nonexist file: %s\n' "$name" >&2
- # meta_purge "$_DATA/$ITEM/$name"
+ meta_purge "$_DATA/$ITEM/$name"
fi
}
#index input, #index button { margin-left: 1em;}
+/* ### Video View ### */
+
+#view h1 {
+ margin: 1em .5em;
+ font-size: 1.25em;
+ font-weight: bold;
+ text-decoration: none;
+}
+
+#view #mainvideo {
+ display: inline;
+ width: 100%;
+ max-height: 70%;
+}
+
+#view .time, #view .dim,
+#view .tag {
+ margin-right: -.125em;
+ padding: .125em .25em;
+ color: black;
+}
+#view .time,
+#view .dim { background-color: #CCD; }
+#view .tag { background-color: #DCC; }
+
+
+
/* ### Multi Tagging Drawer ### */
#multitag fieldset{
--- /dev/null
+#!/bin/sh
+
+. "$_EXEC/indexmeta.sh"
+. "$_EXEC/widgets.sh"
+
+read length width height tags comment short <<-EOF
+ $(meta_info "$_DATA/$ITEM")
+ EOF
+
+printf 'Content-Type: text/html;charset=utf-8\r\n\r\n'
+
+{ printf '
+[!DOCTYPE HTML]
+[html [head [title Listing]
+ [meta name="viewport" content="width=device-width"]
+ [link rel=stylesheet href="/style.css" ]
+] [body #view
+ [script type="text/javascript" src="/stereoview.js"\n]
+ [div #navigation
+ [a #t_bookmarks href="#bookmarks" ★]'
+ w_search
+ printf '
+ [a #t_avsearch href="#advsearch" Advanced]
+ [a #t_prefs href="#prefs" ⚙]
+ ]'
+ w_bookmarks
+ w_advsearch
+ w_prefs
+ printf '
+ [h1\n %s]
+ [a "?a=download" Download]
+ [a "javascript:stereoview(180, document.getElementById("mainvideo"));" View 180° Stereoscopic]
+ [a "javascript:stereoview(360, document.getElementById("mainvideo"));" View 360° Stereoscopic]
+ [video #mainvideo controls="controls" [source src="?a=download" type="video/mp4"]]
+ [span .time %i:%imin] [span .dim %ix%i] %s
+ ' "$(HTML "${ITEM##*/}")" \
+ "$((length / 60))" "$((length % 60))" "$width" "$height" \
+ "$(printf '%s\n' "${tags#tags=}" |sed -r "$UNSTRING"'
+ s;^;,;; s;,+;,;g; s;,$;;; :X s;,([^,]+)(,|$); [span .tag\n \1]\2;; tX;'
+ )"
+ printf '
+ [div #editing
+ [form method=POST action="?a=multitag"'
+ [ -d "$_DATA/${ITEM%/*}/.index/" ] && w_tagging
+ printf '
+ ]
+ ]
+] ]
+'; } | "$_EXEC/cgilite/html-sh.sed"