diff options
author | default <nobody@localhost> | 2023-06-28 20:36:23 +0200 |
---|---|---|
committer | default <nobody@localhost> | 2023-06-28 20:36:33 +0200 |
commit | d1add0598ad273fc26242017b80aa909835b6e08 (patch) | |
tree | 16da13d38e99dc116370aafd151452c0191c50fb /mastoapi.c | |
parent | 3559a0f1f2dd7fc3cb8c430e53a197ac94e6a51a (diff) |
In mastoapi, notes can be pinned / unpinned.
Diffstat (limited to 'mastoapi.c')
-rw-r--r-- | mastoapi.c | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -863,7 +863,8 @@ xs_dict *mastoapi_status(snac *snac, const xs_dict *msg) st = xs_dict_append(st, "poll", xs_stock_null); st = xs_dict_append(st, "bookmarked", xs_stock_false); - st = xs_dict_append(st, "pinned", xs_stock_false); + + st = xs_dict_append(st, "pinned", is_pinned(snac, id) ? xs_stock_true : xs_stock_false); return st; } @@ -1932,11 +1933,17 @@ int mastoapi_post_handler(const xs_dict *req, const char *q_path, } else if (strcmp(op, "pin") == 0) { /** **/ - /* snac does not support pinning */ + /* pin this message */ + if (pin(&snac, id)) + out = mastoapi_status(&snac, msg); + else + status = 422; } else if (strcmp(op, "unpin") == 0) { /** **/ - /* snac does not support pinning */ + /* unpin this message */ + unpin(&snac, id); + out = mastoapi_status(&snac, msg); } else if (strcmp(op, "mute") == 0) { /** **/ |