conditionally render status url based on run-mode
This commit is contained in:
parent
8cbb295c3a
commit
b8ff944377
|
@ -1,7 +1,7 @@
|
|||
use maud::{html, PreEscaped};
|
||||
use peach_lib::sbot::SbotStatus;
|
||||
|
||||
use crate::{templates, utils::theme};
|
||||
use crate::{templates, utils::theme, SERVER_CONFIG};
|
||||
|
||||
/// Read the state of the go-sbot process and define status-related
|
||||
/// elements accordingly.
|
||||
|
@ -24,9 +24,23 @@ fn render_status_elements<'a>() -> (&'a str, &'a str, &'a str) {
|
|||
}
|
||||
}
|
||||
|
||||
/// Render the URL for the status element (icon / link).
|
||||
///
|
||||
/// If the application is running in standalone mode then the element links
|
||||
/// directly to the Scuttlebutt status page. If not, it links to the device
|
||||
/// status page.
|
||||
fn render_status_url<'a>() -> &'a str {
|
||||
if SERVER_CONFIG.standalone_mode {
|
||||
"/status/scuttlebutt"
|
||||
} else {
|
||||
"/status"
|
||||
}
|
||||
}
|
||||
|
||||
/// Home template builder.
|
||||
pub fn build_template() -> PreEscaped<String> {
|
||||
let (circle_color, center_circle_text, circle_border) = render_status_elements();
|
||||
let status_url = render_status_url();
|
||||
|
||||
// render the home template html
|
||||
let home_template = html! {
|
||||
|
@ -63,7 +77,7 @@ pub fn build_template() -> PreEscaped<String> {
|
|||
}
|
||||
(PreEscaped("<!-- bottom-left -->"))
|
||||
(PreEscaped("<!-- SYSTEM STATUS LINK AND ICON -->"))
|
||||
a class="bottom-left" href="/status/scuttlebutt" title="Status" {
|
||||
a class="bottom-left" href=(status_url) title="Status" {
|
||||
div class={ "circle circle-small border-circle-small " (circle_border) } {
|
||||
img class="icon-medium" src="/icons/heart-pulse.svg";
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue