From 2f4eeee255c521de39dffd1de2b98f9eebae2069 Mon Sep 17 00:00:00 2001 From: Cynthia Foxwell Date: Sat, 2 Dec 2023 13:17:18 -0700 Subject: [PATCH] fedimbed: only sensitive spoiler if media so cw's arent double spoilered --- src/modules/fedimbed.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/modules/fedimbed.js b/src/modules/fedimbed.js index ae1a21e..8cbe627 100644 --- a/src/modules/fedimbed.js +++ b/src/modules/fedimbed.js @@ -131,7 +131,7 @@ async function processUrl(msg, url, spoiler = false) { url = urlObj.href; } - let platform = await resolvePlatform(url) ?? ""; + let platform = (await resolvePlatform(url)) ?? ""; let color = PLATFORM_COLORS[platform]; let platformName = platform .replace("gotosocial", "GoToSocial") @@ -335,9 +335,6 @@ async function processUrl(msg, url, spoiler = false) { avatar: postData2.account?.avatar ?? postData2.user?.avatarUrl, }; timestamp = postData2.created_at ?? postData2.createdAt; - if (!spoiler && postData2.sensitive) { - spoiler = true; - } emotes = postData2.emojis .filter((x) => !x.name.endsWith("@.")) .map((x) => ({name: `:${x.name}:`, url: x.url})); @@ -377,6 +374,9 @@ async function processUrl(msg, url, spoiler = false) { } } } + if (!spoiler && postData2.sensitive && attachments.length > 0) { + spoiler = true; + } if (postData2.poll) { poll = { @@ -407,9 +407,6 @@ async function processUrl(msg, url, spoiler = false) { postData._misskey_content ?? postData.source?.content ?? postData.content; cw = postData.summary; timestamp = postData.published; - if (!spoiler && postData.sensitive) { - spoiler = true; - } if (postData.tag) emotes = postData.tag @@ -444,6 +441,10 @@ async function processUrl(msg, url, spoiler = false) { } } + if (!spoiler && postData.sensitive && attachments.length > 0) { + spoiler = true; + } + if (postData.image?.url) { const imageUrl = new URL(postData.image?.url); images.push({