Everywhere: Use Catbox API asynchronously

Fixes #2
This commit is contained in:
Alec Murphy 2025-03-04 13:26:35 -05:00
parent 04dce33aca
commit a7649a00c8
6 changed files with 102 additions and 102 deletions

View file

@ -1,3 +1,26 @@
U0 @slon_api_v1_media_get(SlonHttpSession* session)
{
if (@slon_api_authorized(session)) {
if (session->path_count() < 4) {
session->status(400);
return;
}
U8* id = session->path(3);
if (db->o("media")->o(id)) {
if (db->o("media")->o(id)->@("url", TRUE)(JsonKey*)->type == JSON_NULL) {
session->send(db->o("media")->o(id));
session->status(206);
} else {
session->send(db->o("media")->o(id));
}
} else {
session->status(404);
}
} else {
session->status(401);
}
}
U0 @slon_api_v1_media_put(SlonHttpSession* session)
{
SLON_SCRATCH_BUFFER_AND_REQUEST_JSON

View file

@ -196,7 +196,7 @@ U0 @slon_api_v1_statuses_delete(SlonHttpSession* session)
while (*(attachment_url_ptr - 1) != '/') {
--attachment_url_ptr;
}
@slon_api_delete_from_catbox(session, attachment_url_ptr);
Spawn(&@slon_api_async_delete_from_catbox, StrNew(attachment_url_ptr, adam_task), "SlonAsyncCatboxDelete");
}
}
}