]> git.cworth.org Git - zombocom-ai/blobdiff - bus.html
Reword Coda's final message
[zombocom-ai] / bus.html
index 845b048ec24039fd7792e2e9c1b81a1a649f7cb4..40e50d38b6aab2ebf6ec8eab755cd98f1f7737df 100644 (file)
--- a/bus.html
+++ b/bus.html
     #output {
        width: 100%;
     }
+    #error {
+       font-family: monospace;
+       color: red;
+       white-space: pre-wrap;
+    }
   </style>
 </head>
 
     </div>
 
     <div id="program" style="visibility: hidden">
-      <h1>
-       Magic School Bus Central Processor
+      <h1>Magic School Bus</h1>
       </h1>
       <form id="form">
-       <textarea id="code" rows="10" width="100%">t.forward(100);
-t.right(90);
-t.forward(100);
-       </textarea>
+       <textarea id="code" rows="15" width="100%"></textarea>
        <button type="submit">Run code</button>
       </form>
+      <div id="error">
+      </div>
       <img id="output"></img>
-    </div>
+   </div>
 
     <button id="jumpstart">
       Jumpstart Magic School Bus
@@ -151,6 +154,7 @@ t.forward(100);
     const welcome_message = document.getElementById("welcome-message");
     const jumpstart = document.getElementById("jumpstart");
     const output = document.getElementById("output");
+    const error = document.getElementById("error");
 
     function fade_element(elt) {
        elt.style.opacity = "100%";
@@ -169,7 +173,6 @@ t.forward(100);
 
     form.addEventListener('submit', event => {
        event.preventDefault();
-       console.log("Submitted form with code: " + code.value);
        socket.emit('run', code.value);
     });
 
@@ -177,6 +180,10 @@ t.forward(100);
        students.textContent = count.toString();
     });
 
+    socket.on('code', (code_string) => {
+       code.value = code_string;
+    });
+
     socket.on('timer', (value) => {
        timer_div.style.visibility = "visible";
        timer.textContent = value.toString();
@@ -193,6 +200,10 @@ t.forward(100);
        }
     });
 
+    socket.on('error', (error_message) => {
+       error.textContent = error_message;
+    });
+
     socket.on('state', (state) => {
        if (state === "program") {
            welcome.style.visibility = "hidden";
@@ -209,6 +220,7 @@ t.forward(100);
     });
 
     socket.on('output', (filename) => {
+       error.textContent = "";
        output.src = filename;
     });