diff --git a/crates/service/service-webpage/src/components/misc.rs b/crates/service/service-webpage/src/components/misc.rs index 53b73c0..77523e2 100644 --- a/crates/service/service-webpage/src/components/misc.rs +++ b/crates/service/service-webpage/src/components/misc.rs @@ -15,3 +15,23 @@ impl Render for FarLink<'_, T> { ) } } + +pub struct Backlinks( + pub &'static [(&'static str, &'static str)], + pub &'static str, +); + +impl Render for Backlinks { + fn render(&self) -> Markup { + html! { + div { + @for (url, text) in self.0 { + a href=(url) style="padding-left:5pt;padding-right:5pt;" { (text) } + "/" + } + + span style="color:var(--metaColor);padding-left:5pt;padding-right:5pt;" { (self.1) } + } + } + } +} diff --git a/crates/service/service-webpage/src/routes/betalupi.rs b/crates/service/service-webpage/src/routes/betalupi.rs index 9844ced..e4a810d 100644 --- a/crates/service/service-webpage/src/routes/betalupi.rs +++ b/crates/service/service-webpage/src/routes/betalupi.rs @@ -5,6 +5,7 @@ use crate::{ components::{ base::{BasePage, PageMetadata}, md::Markdown, + misc::Backlinks, }, routes::assets::{Image_Betalupi, Image_Icon}, }; @@ -21,12 +22,7 @@ pub async fn betalupi() -> Markup { (BasePage( meta, html!( - // TODO: no metadata class, generate backlink array - div { - a href="/" style="padding-left:4pt;padding-right:4pt;" {"home"} - "/" - span class="metaData" style="padding-left:4pt;padding-right:4pt;" { "whats-a-betalupi" } - } + (Backlinks(&[("/", "home")], "whats-a-betalupi")) (Markdown(MD_A)) diff --git a/crates/service/service-webpage/src/routes/links.rs b/crates/service/service-webpage/src/routes/links.rs index d522b18..3be0042 100644 --- a/crates/service/service-webpage/src/routes/links.rs +++ b/crates/service/service-webpage/src/routes/links.rs @@ -5,6 +5,7 @@ use crate::{ components::{ base::{BasePage, PageMetadata}, md::Markdown, + misc::Backlinks, }, routes::assets::Image_Icon, }; @@ -21,12 +22,7 @@ pub async fn links() -> Markup { (BasePage( meta, html!( - // TODO: no metadata class, generate backlink array - div { - a href="/" style="padding-left:4pt;padding-right:4pt;" {"home"} - "/" - span class="metaData" style="padding-left:4pt;padding-right:4pt;" { "links" } - } + (Backlinks(&[("/", "home")], "links")) (Markdown(MD_A))