commit 380e5b3

green  ·  2025-06-16 17:41:14 +0000 UTC
parent cda6bc9
metadata: location and bday properties
1 files changed,  +38, -0
M html.c
M html.c
+38, -0
 1@@ -3363,6 +3363,44 @@ xs_html *html_people_list(snac *user, xs_list *list, const char *header, const c
 2                 xs_html_attr("class", "snac-metadata"));
 3 
 4             int count = 0;
 5+            const xs_val *address = xs_dict_get(actor, "vcard:Address");
 6+            if (xs_is_string(address)) {
 7+                xs_html_add(snac_metadata,
 8+                    xs_html_tag("span",
 9+                        xs_html_attr("class", "snac-property-name"),
10+                        xs_html_raw("📍 Location")),
11+                    xs_html_text(":"),
12+                    xs_html_raw(" "),
13+                    xs_html_tag("span",
14+                        xs_html_attr("class", "snac-property-value p-adr"),
15+                        xs_html_text(address)),
16+                    xs_html_sctag("br", NULL));
17+
18+                count++;
19+            }
20+
21+            const xs_val *birthday = xs_dict_get(actor, "vcard:bday");
22+            if (xs_is_string(birthday)) {
23+                xs_html_add(snac_metadata,
24+                    xs_html_tag("span",
25+                        xs_html_attr("class", "snac-property-name"),
26+                        xs_html_raw("🎂 Birthday")),
27+                    xs_html_text(":"),
28+                    xs_html_raw(" "),
29+                    xs_html_tag("time",
30+                        xs_html_attr("class", "snac-property-value dt-bday"),
31+                        xs_html_text(birthday)),
32+                    xs_html_sctag("br", NULL));
33+
34+                count++;
35+            }
36+
37+            if (count > 0) {
38+                xs_html_add(snac_metadata,
39+                    xs_html_sctag("hr",
40+                        xs_html_attr("class", "snac-property-divider")));
41+            }
42+
43             const xs_val *v;
44             const xs_list *attachment = xs_dict_get(actor, "attachment");
45             xs_list_foreach(attachment, v) {