|
|
@@ -2314,11 +2314,13 @@ int mastoapi_post_handler(const xs_dict *req, const char *q_path,
|
|
|
}
|
|
|
else
|
|
|
if (strcmp(op, "unfavourite") == 0) { /** **/
|
|
|
- /* partial support: as the original Like message
|
|
|
- is not stored anywhere here, it's not possible
|
|
|
- to send an Undo + Like; the only thing done here
|
|
|
- is to delete the actor from the list of likes */
|
|
|
- object_unadmire(id, snac.actor, 1);
|
|
|
+ xs *n_msg = msg_repulsion(&snac, id, "Like");
|
|
|
+
|
|
|
+ if (n_msg != NULL) {
|
|
|
+ enqueue_message(&snac, n_msg);
|
|
|
+
|
|
|
+ out = mastoapi_status(&snac, msg);
|
|
|
+ }
|
|
|
}
|
|
|
else
|
|
|
if (strcmp(op, "reblog") == 0) { /** **/
|
|
|
@@ -2333,8 +2335,13 @@ int mastoapi_post_handler(const xs_dict *req, const char *q_path,
|
|
|
}
|
|
|
else
|
|
|
if (strcmp(op, "unreblog") == 0) { /** **/
|
|
|
- /* partial support: see comment in 'unfavourite' */
|
|
|
- object_unadmire(id, snac.actor, 0);
|
|
|
+ xs *n_msg = msg_repulsion(&snac, id, "Announce");
|
|
|
+
|
|
|
+ if (n_msg != NULL) {
|
|
|
+ enqueue_message(&snac, n_msg);
|
|
|
+
|
|
|
+ out = mastoapi_status(&snac, msg);
|
|
|
+ }
|
|
|
}
|
|
|
else
|
|
|
if (strcmp(op, "bookmark") == 0) { /** **/
|