--- /dev/null
+<!-- Copyright 2020-2021 Ian Jackson and contributors to Otter
+ SPDX-License-Identifier: AGPL-3.0-or-later
+ There is NO WARRANTY. -->
+{{ players }}
#[throws(InternalError)]
pub fn player_info_pane(&self) -> Html {
- let html = Html(format!(
- "Players list from server, but NYI {}", &self.gs.gen,
- ));// xxx
+ #[derive(Serialize,Debug)]
+ struct RenderContext<'r> {
+ players: &'r DenseSlotMap<PlayerId, GPlayerState>,
+ }
+ let render = RenderContext {
+ players: &self.gs.players,
+ };
+ let txt = nwtemplates::render("player-info-pane.tera", &render)
+ .context("render player info template")?;
+ let html = Html::from_txt(&txt);
html
}
}
+{# -*- HTML -*- -#}
+<!-- Copyright 2020u Ian Jackson
+ SPDX-License-Identifier: AGPL-3.0-or-later
+ There is NO WARRANTY. -->
{% import "macros" as m %}{# -*- HTML -*- -#}
{{ m::header() }}
<style>
+{# -*- HTML -*- -#}
+<!-- Copyright 2020u Ian Jackson
+ SPDX-License-Identifier: AGPL-3.0-or-later
+ There is NO WARRANTY. -->
{% import "macros" as m %}{# -*- HTML -*- -#}
{{ m::header() }}
<style>