chiark / gitweb /
last log timestamp progation from session.rs to script.ts
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 27 Nov 2020 00:47:58 +0000 (00:47 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 27 Nov 2020 00:47:58 +0000 (00:47 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/session.rs
templates/script.ts

index febb50d247a2f721527f3d00d82c65994f93dec5..f42babbbccc3d4fc428277748f5862a8188172ba 100644 (file)
@@ -43,6 +43,7 @@ struct SessionPieceLoadJson<'r> {
 
 #[derive(Serialize,Debug)]
 struct DataLoad {
+  last_log_ts: String,
   players : HashMap<PlayerId, DataLoadPlayer>,
 }
 #[derive(Serialize,Debug)]
@@ -190,7 +191,8 @@ fn session(form : Json<SessionForm>, layout: PresentationLayout)
       sse_url_prefix,
       ptoken: form.ptoken.clone(),
       load : serde_json::to_string(&DataLoad {
-        players : load_players,
+        players: load_players,
+        last_log_ts: timestamp_abbrev.unwrap_or_default(),
       }).map_err(|e| InternalError::JSONEncode(e))?,
     };
     trace!("SessionRenderContext {:?}", &src);
index a80fe61628fa8efcdcc8c5ac692be2ea4ca788dc..339ab4dce78662c7815669727990f233a4a95590 100644 (file)
@@ -1112,15 +1112,7 @@ function startup() {
     redisplay_ancillaries(piece,p);
   }
 
-  let lastlogent_s = '';
-  if (layout == 'Landscape') {
-    // xxx this is wrong, use value provided by session.rs
-    let lastent = log_elem.lastElementChild;
-    if (lastent !== null) {
-      lastlogent_s = lastent.firstElementChild!.innerHTML;
-    }
-  }
-  last_log_ts = wasm_bindgen.timestamp_abbreviator(lastlogent_s);
+  last_log_ts = wasm_bindgen.timestamp_abbreviator(dataload.last_log_ts);
 
   var es = new EventSource(
     sse_url_prefix + "/_/updates?ctoken="+ctoken+'&gen='+gen