From 394530477e78ee1b1b5b87940ac22ecfed001b81 Mon Sep 17 00:00:00 2001
From: Neil Gershenfeld <neil.gershenfeld@cba.mit.edu>
Date: Fri, 19 May 2017 00:25:44 -0400
Subject: [PATCH] initial viewer commit

---
 viewer.html | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)
 create mode 100644 viewer.html

diff --git a/viewer.html b/viewer.html
new file mode 100644
index 0000000..f457f42
--- /dev/null
+++ b/viewer.html
@@ -0,0 +1,61 @@
+<html>
+<body>
+<img id="img" alt="waiting for screen transmission to start"><br>
+<a href="screen.js">screen.js</a>
+<a href="viewer.html">viewer.html</a>
+<script type="text/javascript">
+//
+// viewer.html
+//    screen.js content viewer
+//    Neil Gershenfeld
+//    2/9/17
+//
+var client_delay
+initialize()
+update()
+function initialize() {
+   var req = new XMLHttpRequest()
+   req.open('GET','/initvars',true);
+   req.send()
+   req.addEventListener('loadend',function(evt) {
+      if (evt.loaded == 0) {
+         req.abort()
+         }
+      else {
+         var vars = JSON.parse(req.responseText)
+         client_delay = vars.client_delay
+         }
+      })
+   var req = new XMLHttpRequest()
+   req.open('GET','/initimg',true);
+   req.responseType = 'blob'
+   req.send()
+   req.addEventListener('loadend',function(evt) {
+      if (evt.loaded == 0) {
+         req.abort()
+         }
+      else {
+         var url = window.URL.createObjectURL(req.response)
+         document.getElementById("img").src = url
+         }
+      })
+   }
+function update() {
+   var req = new XMLHttpRequest()
+   req.open('GET','/img',true);
+   req.responseType = 'blob'
+   req.send()
+   req.addEventListener('loadend',function(evt) {
+      if (evt.loaded == 0) {
+         req.abort()
+         document.getElementById("img").alt = 'screen transmission ended'
+         document.getElementById("img").src = ''
+         }
+      else {
+         var url = window.URL.createObjectURL(req.response)
+         document.getElementById("img").src = url
+         setTimeout(update,client_delay)
+         }
+      })
+   }
+</script>
-- 
GitLab