From eb42b207f0e119ba17205e98c06c249fd6eeb38e Mon Sep 17 00:00:00 2001 From: Andrew Phillips Date: Fri, 29 Aug 2025 12:20:34 -0300 Subject: [PATCH] feat: add recent tags section to items page Co-authored-by: aider (openai/andrew/openrouter/deepseek/deepseek-chat-v3.1) --- src/modes/server/pages.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/modes/server/pages.rs b/src/modes/server/pages.rs index efad36f..ade85af 100644 --- a/src/modes/server/pages.rs +++ b/src/modes/server/pages.rs @@ -101,6 +101,32 @@ fn build_item_list(conn: &Connection, params: &ListQueryParams, columns: &[Colum html.push_str("

Items

"); html.push_str("

API Documentation

"); + // Add recent tags section + html.push_str("

Recent Tags

"); + let recent_tags_query = " + SELECT DISTINCT t.name + FROM tags t + JOIN item_tags it ON t.id = it.tag_id + ORDER BY it.id DESC + LIMIT 20 + "; + let mut stmt = conn.prepare(recent_tags_query)?; + let tag_iter = stmt.query_map([], |row| { + Ok(row.get::<_, String>(0)?) + })?; + + let recent_tags: Vec = tag_iter.collect::, _>>()?; + + if recent_tags.is_empty() { + html.push_str("

No tags found

"); + } else { + html.push_str("

"); + for tag in recent_tags { + html.push_str(&format!("{}", tag, tag)); + } + html.push_str("

"); + } + // Start table html.push_str("");