diff options
author | dakkar <dakkar@thenautilus.net> | 2021-12-22 14:03:45 +0000 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2021-12-22 14:03:45 +0000 |
commit | 4e2f3b37ffc277512cc861036195ed8215baf959 (patch) | |
tree | d40ba9a9eb013236818340634fa73d16e3ba3152 /resources/index.html | |
parent | some renaming (diff) | |
download | media-control-4e2f3b37ffc277512cc861036195ed8215baf959.tar.gz media-control-4e2f3b37ffc277512cc861036195ed8215baf959.tar.bz2 media-control-4e2f3b37ffc277512cc861036195ed8215baf959.zip |
change html file name
Diffstat (limited to 'resources/index.html')
-rw-r--r-- | resources/index.html | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/resources/index.html b/resources/index.html new file mode 100644 index 0000000..e33ac9a --- /dev/null +++ b/resources/index.html @@ -0,0 +1,58 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8"> + <title>vlc</title> + <script> + "use strict" + + function vlcCall(method,path,args) { + args ||= {}; + let url=new URL(path,location.href); + for (let a in args) { + url.searchParams.set(a,args[a]); + } + return fetch(url, { + method: method, + mode: 'no-cors', + }); + } + + function vlcCommand(command,args) { + vlcCall('post',command,args); + } + + async function updateView() { + const status = (await (await vlcCall('get','status')).json()).status; + const currentPos = document.querySelector('#current-pos'); + + if (status.state != 'playing') { + currentPos.disabled=true; + return; + } + + currentPos.disabled=false; + const length = parseInt(status.length); + + if (!length) { return } + + const time = parseInt(status.time); + currentPos.max=length; + currentPos.value=time; + } + + document.addEventListener('readystatechange', (event) => { + if (document.readyState == 'complete') { + setInterval(updateView, 1000); + } + }) + </script> + </head> + <body> + <button onclick="vlcCommand('play')">play</button> + <button onclick="vlcCommand('pause')">pause</button> + <button onclick="vlcCommand('stop')">stop</button> + <button onclick="updateView()">update</button> + <input type="range" id="current-pos"> + </body> +</html> |