web: use bold text to indicate unread messages

This commit is contained in:
Bill Thiede 2024-02-20 14:29:42 -08:00
parent 02c0d36f90
commit de3f392bd7
3 changed files with 15 additions and 11 deletions

View File

@ -63,7 +63,7 @@
width: 100%; width: 100%;
} }
.index tr.unread { .index .unread {
font-weight: bold; font-weight: bold;
} }

View File

@ -4,9 +4,7 @@ use crate::{
api::urls, api::urls,
graphql::front_page_query::*, graphql::front_page_query::*,
state::{Context, Model, Msg}, state::{Context, Model, Msg},
view::{ view::{self, human_age, pretty_authors, search_toolbar, set_title, tags_chiclet, view_header},
self, human_age, pretty_authors, set_title, tags_chiclet, view_header, view_search_pager,
},
}; };
pub(super) fn view(model: &Model) -> Node<Msg> { pub(super) fn view(model: &Model) -> Node<Msg> {
@ -41,8 +39,14 @@ fn search_results(
let rows = results.iter().map(|r| { let rows = results.iter().map(|r| {
let tid = r.thread.clone(); let tid = r.thread.clone();
let datetime = human_age(r.timestamp as i64); let datetime = human_age(r.timestamp as i64);
let unread_idx = r.tags.iter().position(|e| e == &"unread");
let mut tags = r.tags.clone();
if let Some(idx) = unread_idx {
tags.remove(idx);
};
a![ a![
C!["has-text-light"], C!["has-text-light"],
IF!(unread_idx.is_some() => C!["unread"]),
attrs! { attrs! {
At::Href => urls::thread(&tid) At::Href => urls::thread(&tid)
}, },
@ -51,7 +55,7 @@ fn search_results(
div![C!["subject"], &r.subject], div![C!["subject"], &r.subject],
span![C!["from", "is-size-7"], pretty_authors(&r.authors)], span![C!["from", "is-size-7"], pretty_authors(&r.authors)],
div![ div![
span![C!["is-size-7"], tags_chiclet(&r.tags, true)], span![C!["is-size-7"], tags_chiclet(&tags, true)],
span![C!["is-size-7", "float-right", "date"], datetime] span![C!["is-size-7", "float-right", "date"], datetime]
] ]
] ]
@ -59,8 +63,8 @@ fn search_results(
}); });
div![ div![
C!["search-results"], C!["search-results"],
view_search_pager(count, pager), search_toolbar(count, pager),
rows, div![C!["index"], rows,],
view_search_pager(count, pager), search_toolbar(count, pager),
] ]
} }

View File

@ -160,7 +160,7 @@ fn view_search_results(
}); });
div![ div![
view_search_pager(count, pager), search_toolbar(count, pager),
table![ table![
C![ C![
"table", "table",
@ -177,11 +177,11 @@ fn view_search_results(
]], ]],
tbody![rows] tbody![rows]
], ],
view_search_pager(count, pager) search_toolbar(count, pager)
] ]
} }
fn view_search_pager(count: usize, pager: &FrontPageQuerySearchPageInfo) -> Node<Msg> { fn search_toolbar(count: usize, pager: &FrontPageQuerySearchPageInfo) -> Node<Msg> {
let start = pager let start = pager
.start_cursor .start_cursor
.as_ref() .as_ref()