commit e1ce85debd5b192b5dc56a4e9810839cc52b0f8b
parent 3954361785c1384272b0e9fc7262bb25441101de
Author: default <nobody@localhost>
Date: Sat, 11 May 2024 18:46:15 +0200
Unified post-like object type match.
Diffstat:
5 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/activitypub.c b/activitypub.c
@@ -355,7 +355,7 @@ int timeline_request(snac *snac, char **id, xs_str **wrk, int level)
type = "(null)";
}
- if (xs_match(type, "Note|Page|Article|Video")) {
+ if (xs_match(type, POSTLIKE_OBJECT_TYPE)) {
const char *actor = get_atto(object);
if (content_check("filter_reject.txt", object))
diff --git a/data.c b/data.c
@@ -2577,7 +2577,7 @@ xs_list *content_search(snac *user, const char *regex,
if (!valid_status(timeline_get_by_md5(user, md5, &post)))
continue;
- if (!xs_match(xs_dict_get_def(post, "type", "-"), "Note|Question|Page|Article|Video"))
+ if (!xs_match(xs_dict_get_def(post, "type", "-"), POSTLIKE_OBJECT_TYPE))
continue;
char *content = xs_dict_get(post, "content");
diff --git a/html.c b/html.c
@@ -256,7 +256,7 @@ xs_html *html_msg_icon(snac *user, char *actor_id, const xs_dict *msg)
int priv = 0;
const char *type = xs_dict_get(msg, "type");
- if (xs_match(type, "Note|Question|Page|Article|Video"))
+ if (xs_match(type, POSTLIKE_OBJECT_TYPE))
url = xs_dict_get(msg, "id");
priv = !is_msg_public(msg);
@@ -1405,7 +1405,7 @@ xs_html *html_entry(snac *user, xs_dict *msg, int read_only,
html_msg_icon(read_only ? NULL : user, xs_dict_get(msg, "actor"), msg)));
}
else
- if (!xs_match(type, "Note|Question|Page|Article|Video")) {
+ if (!xs_match(type, POSTLIKE_OBJECT_TYPE)) {
/* skip oddities */
return NULL;
}
diff --git a/mastoapi.c b/mastoapi.c
@@ -1504,7 +1504,7 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path,
/* discard non-Notes */
const char *id = xs_dict_get(msg, "id");
const char *type = xs_dict_get(msg, "type");
- if (!xs_match(type, "Note|Question|Page|Article|Video"))
+ if (!xs_match(type, POSTLIKE_OBJECT_TYPE))
continue;
const char *from = NULL;
@@ -1681,7 +1681,7 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path,
/* discard non-Notes */
const char *id = xs_dict_get(msg, "id");
const char *type = xs_dict_get(msg, "type");
- if (!xs_match(type, "Note|Question|Page|Article|Video"))
+ if (!xs_match(type, POSTLIKE_OBJECT_TYPE))
continue;
const char *from = NULL;
diff --git a/snac.h b/snac.h
@@ -29,6 +29,8 @@ extern int dbglevel;
#define L(s) (s)
+#define POSTLIKE_OBJECT_TYPE "Note|Question|Page|Article|Video"
+
int mkdirx(const char *pathname);
int valid_status(int status);