diff --git a/html.c b/html.c
index e4703d1..263a888 100644
--- a/html.c
+++ b/html.c
@@ -66,7 +66,7 @@ xs_str *actor_name(xs_dict *actor)
if (n && i) {
char *u = xs_dict_get(i, "url");
- xs *img = xs_fmt("", u);
+ xs *img = xs_fmt("", u);
name = xs_replace_i(name, n, img);
}
@@ -392,6 +392,7 @@ d_char *html_top_controls(snac *snac, d_char *s)
"
\n"
"
\n"
+ "\n"
"
\n"
"
%s
\n"
@@ -528,6 +530,7 @@ d_char *html_top_controls(snac *snac, d_char *s)
xs *es6 = encode_html(purge_days);
xs *s1 = xs_fmt(_tmpl,
+ L("New Post..."),
snac->actor,
L("Sensitive content"),
L("Sensitive content description"),
@@ -547,7 +550,7 @@ d_char *html_top_controls(snac *snac, d_char *s)
L("Post"),
- L("More options..."),
+ L("Preferences..."),
snac->actor,
L("Follow"), L("(by URL or user@host)"),
@@ -555,7 +558,7 @@ d_char *html_top_controls(snac *snac, d_char *s)
snac->actor,
L("Boost"), L("(by URL)"),
- L("User settings...."),
+ L("User Settings"),
snac->actor,
L("Display name"),
es1,
@@ -1034,7 +1037,7 @@ xs_str *html_entry(snac *snac, xs_str *os, const xs_dict *msg, int local,
if (n && i) {
char *u = xs_dict_get(i, "url");
- xs *img = xs_fmt("", u, n);
c = xs_replace_i(c, n, img);
@@ -1896,23 +1899,25 @@ int html_get_handler(const xs_dict *req, const char *q_path,
if (!xs_startswith(id, snac.actor))
continue;
- xs *es1 = sanitize(xs_dict_get(msg, "content"));
- xs *content = encode_html(es1);
+ xs *content = sanitize(xs_dict_get(msg, "content"));
+
+ // We SHOULD only use sanitized one for description.
+ // So, only encode for feed title, while the description just keep it sanitized as is.
+ xs *es_title_enc = encode_html(xs_dict_get(msg, "content"));
+ xs *es_title = xs_replace(es_title_enc, "
", "\n");
xs *title = xs_str_new(NULL);
int i;
- for (i = 0; content[i] && content[i] != '<' && content[i] != '&' && i < 40; i++)
- title = xs_append_m(title, &content[i], 1);
+ for (i = 0; es_title[i] && es_title[i] != '\n' && i < 50; i++)
+ title = xs_append_m(title, &es_title[i], 1);
- xs *es11 = encode_html(title);
- xs *es12 = encode_html(content);
xs *s = xs_fmt(
"- \n"
"%s...\n"
"%s\n"
"%s\n"
"
\n",
- es11, id, es12
+ title, id, content
);
rss = xs_str_cat(rss, s);