From 0424728f7ec15790d5d51fc95fde62d5aa5d0768 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 20 Feb 2026 08:07:21 -0500 Subject: [PATCH] refactor: pass options to thumbs.load so we can control thumbsOnly --- src/topics/index.js | 2 +- src/topics/thumbs.js | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/topics/index.js b/src/topics/index.js index 0f9c067535..91505c3458 100644 --- a/src/topics/index.js +++ b/src/topics/index.js @@ -101,7 +101,7 @@ Topics.getTopicsByTids = async function (tids, options) { loadShowfullnameSettings(), categories.getCategoriesFields(cids, ['cid', 'name', 'slug', 'icon', 'backgroundImage', 'imageClass', 'bgColor', 'color', 'disabled']), loadGuestHandles(), - Topics.thumbs.load(topics), + Topics.thumbs.load(topics, options), ]); users.forEach((userObj, idx) => { diff --git a/src/topics/thumbs.js b/src/topics/thumbs.js index 3239ab0fdc..013e82a483 100644 --- a/src/topics/thumbs.js +++ b/src/topics/thumbs.js @@ -20,7 +20,7 @@ Thumbs.exists = async function (tid, path) { return thumbs.includes(path); }; -Thumbs.load = async function (topicData) { +Thumbs.load = async function (topicData, options = {}) { const mainPids = topicData.filter(Boolean).map(t => t.mainPid); const mainPostData = await posts.getPostsFields(mainPids, ['attachments', 'uploads']); const hasUploads = mainPostData.map(p => Array.isArray(p.uploads) && p.uploads.length > 0); @@ -33,9 +33,10 @@ Thumbs.load = async function (topicData) { const topicsWithThumbs = topicData.filter((tid, idx) => hasThumbs[idx]); const tidsWithThumbs = topicsWithThumbs.map(t => t.tid); - const thumbs = await loadFromTopicData(topicsWithThumbs, { - thumbsOnly: meta.config.showPostUploadsAsThumbnails !== 1, - }); + const thumbsOnly = Object.hasOwn(options, 'thumbsOnly') ? + options.thumbsOnly : + meta.config.showPostUploadsAsThumbnails !== 1; + const thumbs = await loadFromTopicData(topicsWithThumbs, { thumbsOnly }); const tidToThumbs = _.zipObject(tidsWithThumbs, thumbs); return topicData.map(t => (t && t.tid ? (tidToThumbs[t.tid] || []) : []));