|
@@ -1168,6 +1168,33 @@ xs_dict *msg_admiration(snac *snac, char *object, char *type)
|
|
|
}
|
|
|
|
|
|
|
|
|
+xs_dict *msg_repulsion(snac *user, char *id, char *type)
|
|
|
+
|
|
|
+{
|
|
|
+ xs *a_msg = NULL;
|
|
|
+ xs_dict *msg = NULL;
|
|
|
+
|
|
|
+ if (valid_status(object_get(id, &a_msg))) {
|
|
|
+
|
|
|
+ xs *object = msg_admiration(user, id, type);
|
|
|
+
|
|
|
+
|
|
|
+ object = xs_dict_del(object, "published");
|
|
|
+
|
|
|
+
|
|
|
+ msg = msg_undo(user, object);
|
|
|
+
|
|
|
+
|
|
|
+ msg = xs_dict_set(msg, "to", xs_dict_get(object, "to"));
|
|
|
+
|
|
|
+
|
|
|
+ object_unadmire(id, user->actor, *type == 'L' ? 1 : 0);
|
|
|
+ }
|
|
|
+
|
|
|
+ return msg;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
xs_dict *msg_actor(snac *snac)
|
|
|
|
|
|
{
|