]> git.plutz.net Git - serve0/blobdiff - actions/playctl.sh
styling for pagination links
[serve0] / actions / playctl.sh
index 2934b90fd2b8be4d868451e8df27bcf49691768c..ae1a51bc19f21c7372e0c464561e75e08b9a39e6 100755 (executable)
@@ -21,8 +21,8 @@ statusfile="${_DATA}/mplayer.status"
 statusfile="/tmp/mplayer.status"
 volfile="${_DATA}/mplayer.volume"
 
-export DISPLAY=":0"
-export XDG_RUNTIME_DIR="/run/user/$(id |sed -rn '1s;.*uid=([0-9]+)[^0-9].*;\1;p')"
+[ -z "$DISPLAY" ] && export DISPLAY=":0"
+[ -z "$XDG_RUNTIME_DIR" ] && export XDG_RUNTIME_DIR="/run/user/$(id |sed -rn '1s;.*uid=([0-9]+)[^0-9].*;\1;p')"
 
 printf '\rBREAK\r' >> "$statusfile"
 
@@ -30,16 +30,13 @@ if [ "${_GET[api]}" = progress ]; then
   cr="$(printf \\r)"
   printf 'Content-Type: text/plain\r\n\r\n'
 
+  read length <${_DATA}/mplayer.meta
   tail --pid=$$ -c100 -f "$statusfile" \
   | while read -d "$cr" line; do
     [ "$line" = "BREAK" ] && exit 0
     printf '%s\n' "$line"
   done \
-  | sed -urn '1~12s;^.* V: *+([0-9]+)(\.[0-9]+) A-V:.*$;\1;p' \
-  | while read m; do
-    [ "$m" != "$previous" ] && printf "%d %d\n" "$(($m * 100 / $length))" "$m"
-    previous="$m"
-  done
+  | sed -urn '1~12s;^.* V: *+([0-9]+)(\.[0-9]+) A-V:.*$;\1;p'
   exit 0
 elif [ "${_GET[api]}" = volume ]; then
   printf 'Content-Type: text/plain\r\n\r\n'