From 45329d748b964748ba4f09b70500d81137aad487 Mon Sep 17 00:00:00 2001 From: u <@> Date: Tue, 10 Mar 2026 09:19:26 +0200 Subject: a --- src/lib.rs | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'src') diff --git a/src/lib.rs b/src/lib.rs index 6401829..1276657 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -7,14 +7,13 @@ use crate::solar::{dow, ganzhi, solar, SexagenaryDate, Term, TERMS}; #[event(fetch)] async fn fetch(req: Request, env: Env, _ctx: Context) -> Result { - let r = Router::new(); + // wont let me use closures let re = |r: Request, _| Response::redirect(r.url()?.join("shitpit")?); + let hm = |r: Request, _| Response::redirect(r.url()?.join("/")?); Router::new() .get("/journal", re) .get("/diary", re) - .get("/index.html", |req, _| { - Response::redirect(req.url()?.join("/")?) - }) + .get("/index.html", hm) .get_async("/shitpit", |req, ctx| async move { let u = req.url()?; let a = ctx.env.assets("ASSETS")?; @@ -23,12 +22,11 @@ async fn fetch(req: Request, env: Env, _ctx: Context) -> Result { let re = Regex::new( r"(0[1-9]|[1-9]|1[0-2])\/(0[1-9]|[1-9]|1\d|2\d|3[01])\/(\d{2})$", ).unwrap(); - let mut a: Vec = - a.split('\n').map(|s| s.trim().to_string()).collect(); bone("shitpit", "look in the sky! it's a bird! it's a plane! no it's superego!", html! { pre { - @for x in a.into_iter().map(|l| { - if let Some(c) = re.captures(&l) { + @for x in a.split('\n').map(|l| { + let l = l.trim(); + if let Some(c) = re.captures(l) { let (m, d, y) = (c.get(1), c.get(2), c.get(3)); let f = |x: Option| x.unwrap().as_str().parse().unwrap(); let (y, m, d): (usize, usize, usize) = (f(y) + 2000, f(m), f(d)); @@ -39,11 +37,11 @@ async fn fetch(req: Request, env: Env, _ctx: Context) -> Result { html! { (PreEscaped("")) a name=(href) { } - a class="sec" href=(format!("#{href}")) { + a class="sec" href={"#" (href)} { (format!("{l} {dowl}. {y}年 {m}月 {d}日 ({dowc})")) @if let Some((t, _)) = t { - (t) - } + " " (t) + } } (PreEscaped("
"))
                             }
@@ -183,12 +181,12 @@ body {
 fn menu(nav: &str) -> Markup {
     html! {
         div class="nav" {
-            @let navs = ["home", "shitpit", "about"];
-            @for (i, &n) in navs.iter().enumerate() {
-                a class=({if n == nav { "menuon" } else { "menu" }}) href={"/" (n)} {
+            @let mut navs = ["home", "shitpit", "about"].iter().peekable();
+            @while let Some(&n) = navs.next() {
+                a class=(if n == nav { "menuon" } else { "menu" }) href={"/" (n)} {
                     (n)
                 }
-                @if i != navs.len() - 1 {
+                @if navs.next().is_some() {
                     " / "
                 }
             }
-- 
cgit v1.2.3