From: Jakob Cornell Date: Sun, 5 Jan 2020 07:50:09 +0000 (-0600) Subject: Fix bookmarklet bugs X-Git-Url: https://jcornell.net/gitweb/gitweb.cgi?a=commitdiff_plain;h=20b02897ce6aa88106624c36ceb2a34be09c83c8;p=tutoring-tool.git Fix bookmarklet bugs --- diff --git a/main.py b/main.py index 882888d..ac2e236 100644 --- a/main.py +++ b/main.py @@ -163,6 +163,7 @@ class AsyncHttpServer: def stop(self): self.server.shutdown() + self.server.server_close() class MainView(View): @contextmanager @@ -273,7 +274,7 @@ class MainView(View): server = AsyncHttpServer(57853, data) server.start() messagebox.showinfo( - "Serving Table Data", + "Serving Table Data…", "Table data is ready to be transferred to your browser. You may close this dialog when the transfer is complete.", ) server.stop() diff --git a/table_bookmarklet b/table_bookmarklet index fadfd81..bf8278a 100644 --- a/table_bookmarklet +++ b/table_bookmarklet @@ -1 +1 @@ -javascript:(function(){var r=new XMLHttpRequest();r.onReadyStateChange=d;function d(){if(r.readyState===XMLHttpRequest.DONE){var rows=JSON.parse(r.responseText);var t=document.createElement('table');var h=t.createTHead();rows.shift().forEach(v=>{var c=document.createElement('th');c.innerText=v;h.appendChild(c);});rows.forEach(r=>{var tr=t.insertRow(-1);r.forEach(v=>{var c=document.createElement('td');c.innerText=v;tr.appendChild(c);});});var box=document.querySelector('[contenteditable="true"]');box.appendChild(document.createElement('br'));box.appendChild(t);box.appendChild(document.createElement('br'));}}})() +javascript:(function(){var r=new XMLHttpRequest();r.onreadystatechange=d;r.responseType='json';r.open('GET','http://localhost:57853/');r.send();function d(){if(r.readyState===XMLHttpRequest.DONE){var rows=r.response;var t=document.createElement('table');var h=t.createTHead();console.log(rows);rows.shift().forEach(v=>{var c=document.createElement('th');c.innerText=v;h.appendChild(c);});rows.forEach(r=>{var tr=t.insertRow(-1);r.forEach(v=>{var c=document.createElement('td');c.innerText=v;tr.appendChild(c);});});var box=document.querySelector('[contenteditable="true"]');box.appendChild(document.createElement('br'));box.appendChild(t);box.appendChild(document.createElement('br'));}}})()