From fb2489812ec535e14c72b39c1d291b2c44155742 Mon Sep 17 00:00:00 2001 From: Kibi Kelburton Date: Sat, 13 Jun 2026 15:16:12 +0200 Subject: [PATCH] api upload min tags --- src/inc/routes/apiv2/upload.mjs | 4 ++-- src/upload_handler.mjs | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/inc/routes/apiv2/upload.mjs b/src/inc/routes/apiv2/upload.mjs index 00c9c41..b89393a 100644 --- a/src/inc/routes/apiv2/upload.mjs +++ b/src/inc/routes/apiv2/upload.mjs @@ -227,8 +227,8 @@ export default router => { } const tags = tagsRaw ? tagsRaw.split(',').map(t => t.trim()).filter(t => t.length > 0 && !['sfw', 'nsfw', 'nsfl'].includes(t.toLowerCase())) : []; const minTags = getMinTags(); - // In shitpost mode tags are optional - if (!is_shitpost && tags.length < minTags) { + // In shitpost mode tags are optional; skip entirely when minTags is 0 + if (!is_shitpost && minTags > 0 && tags.length < minTags) { return res.json({ success: false, msg: `At least ${minTags} tag${minTags !== 1 ? 's' : ''} required` }, 400); } diff --git a/src/upload_handler.mjs b/src/upload_handler.mjs index 01a8ef2..1a3ea69 100644 --- a/src/upload_handler.mjs +++ b/src/upload_handler.mjs @@ -158,11 +158,11 @@ export const handleUpload = async (req, res, self) => { const minTags = getMinTags(); // In shitpost mode, tags are optional by default — unless shitpost_min_tags is configured. const shitpostMinTags = is_shitpost ? (parseInt(cfg.websrv.shitpost_min_tags) || 0) : 0; - if (!is_shitpost && tags.length < minTags) { - return sendJson(res, { success: false, msg: `At least ${minTags} tags are required` }, 400); + if (!is_shitpost && minTags > 0 && tags.length < minTags) { + return sendJson(res, { success: false, msg: `At least ${minTags} tag${minTags !== 1 ? 's' : ''} required` }, 400); } if (is_shitpost && shitpostMinTags > 0 && tags.length < shitpostMinTags) { - return sendJson(res, { success: false, msg: `At least ${shitpostMinTags} tag${shitpostMinTags !== 1 ? 's' : ''} are required` }, 400); + return sendJson(res, { success: false, msg: `At least ${shitpostMinTags} tag${shitpostMinTags !== 1 ? 's' : ''} required` }, 400); } // Validate MIME type