summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordefault <nobody@localhost>2022-09-28 09:46:21 +0200
committerdefault <nobody@localhost>2022-09-28 09:46:21 +0200
commitce2757552cbfffb5855cce292f0f90477b272c36 (patch)
treefd6284f5f50700084fbba45fc5ab9ec7f515c20e
parenta636cf8b25d72900892b18191e0d68de10779e90 (diff)
More HTML work.
-rw-r--r--html.c40
-rw-r--r--snac.h2
2 files changed, 39 insertions, 3 deletions
diff --git a/html.c b/html.c
index 89df82a..5530c34 100644
--- a/html.c
+++ b/html.c
@@ -180,7 +180,7 @@ d_char *html_msg_icon(snac *snac, d_char *s, char *msg)
{
xs *s1 = xs_fmt("<a href=\"%s\" class=\"p-author h-card snac-author\">%s</a>",
- actor, name);
+ actor_id, name);
s = xs_str_cat(s, s1);
}
@@ -207,7 +207,7 @@ d_char *html_msg_icon(snac *snac, d_char *s, char *msg)
}
-d_char *html_user_header(snac *snac, d_char *s)
+d_char *html_user_header(snac *snac, d_char *s, int local)
/* creates the HTML header */
{
char *p, *v;
@@ -243,6 +243,40 @@ d_char *html_user_header(snac *snac, d_char *s)
s = xs_str_cat(s, "</head>\n<body>\n");
+ /* top nav */
+ s = xs_str_cat(s, "<nav style=\"snac-top-nav\">");
+
+ {
+ xs *s1;
+
+ if (local)
+ s1 = xs_fmt("<a href=\"%s/admin\">%s</a></nav>", snac->actor, L("admin"));
+ else
+ s1 = xs_fmt("<a href=\"%s\">%s</a></nav>", snac->actor, L("public"));
+
+ s = xs_str_cat(s, s1);
+ }
+
+ /* user info */
+ {
+ s = xs_str_cat(s, "<div class=\"h-card snac-top-user\">\n");
+
+ xs *s1 = xs_fmt("<p class=\"p-name snac-top-user-name\">%s</p>\n",
+ xs_dict_get(snac->config, "name"));
+ s = xs_str_cat(s, s1);
+
+ xs *s2 = xs_fmt("<p class=\"snac-top-user-id\">@%s@%s</p>\n",
+ xs_dict_get(snac->config, "uid"), xs_dict_get(srv_config, "host"));
+ s = xs_str_cat(s, s2);
+
+ xs *bio = NULL;
+ not_really_markdown(xs_dict_get(snac->config, "bio"), &bio);
+ xs *s3 = xs_fmt("<div class=\"p-note snac-top-user-bio\">%s</div>\n", bio);
+ s = xs_str_cat(s, s3);
+
+ s = xs_str_cat(s, "</div>\n");
+ }
+
return s;
}
@@ -252,7 +286,7 @@ d_char *html_timeline(snac *snac, char *list, int local)
{
d_char *s = xs_str_new(NULL);
- s = html_user_header(snac, s);
+ s = html_user_header(snac, s, local);
s = xs_str_cat(s, "<h1>HI</h1>\n");
diff --git a/snac.h b/snac.h
index 7cd46c7..2adde26 100644
--- a/snac.h
+++ b/snac.h
@@ -16,6 +16,8 @@ extern const char *susie;
#define valid_status(status) ((status) >= 200 && (status) <= 299)
+#define L(s) (s)
+
d_char *xs_time(char *fmt, int local);
#define xs_local_time(fmt) xs_time(fmt, 1)
#define xs_utc_time(fmt) xs_time(fmt, 0)