From e894795fe02b608cd781ab356851a5063d8ee4eb Mon Sep 17 00:00:00 2001 From: Kibi Kelburton Date: Mon, 10 Aug 2026 18:38:14 +0200 Subject: [PATCH] gfdgsd --- public/s/js/upload.js | 12 ++---------- src/inc/routeinc/f0cklib.mjs | 6 +++++- src/inc/routes/apiv2/index.mjs | 7 ++++++- src/inc/routes/scroller.mjs | 11 +++++++++-- 4 files changed, 22 insertions(+), 14 deletions(-) diff --git a/public/s/js/upload.js b/public/s/js/upload.js index 35e72df..03cb7c4 100644 --- a/public/s/js/upload.js +++ b/public/s/js/upload.js @@ -2820,18 +2820,10 @@ window.initUploadForm = (selector) => { } }; - // Skip redirect if every item was a background URL job + // Inject item into grid without redirecting const allPending = lastData?.pending && selectedFiles.every(i => i.type === 'url'); if (!allPending) { - const targetUrl = (lastData && (lastData.visibility > 0 || lastData.redirect || lastData.slug)) - ? (lastData.redirect || `/${lastData.slug || lastData.itemid}`) - : '/'; - if (typeof window.loadPageAjax === 'function') { - await window.loadPageAjax(targetUrl, true, { bypassCache: true }); - if (targetUrl === '/') injectNewItem(); - } else { - window.location.href = targetUrl; - } + injectNewItem(); } } else { restoreBtn(); diff --git a/src/inc/routeinc/f0cklib.mjs b/src/inc/routeinc/f0cklib.mjs index 296b3e2..1a1f6d8 100644 --- a/src/inc/routeinc/f0cklib.mjs +++ b/src/inc/routeinc/f0cklib.mjs @@ -335,7 +335,11 @@ export default { } const isOwnerOrAdmin = (session && user && typeof user === 'string' && session.user && session.user.toLowerCase() === user.toLowerCase()) || (session && (session.admin || session.is_moderator)); - const visibilityFilter = isOwnerOrAdmin ? db`` : db`and coalesce(items.visibility, 0) = 0`; + const visibilityFilter = isOwnerOrAdmin + ? db`` + : (session && session.user + ? db`and (coalesce(items.visibility, 0) = 0 or lower(items.username) = ${session.user.toLowerCase()})` + : db`and coalesce(items.visibility, 0) = 0`); const cacheKey = buildCountCacheKey({ modequery, tag, user, hall, mime, fav, session, excludedTags, newerThan, minXd, userHallObj, tagger }); let total = getCachedCount(cacheKey); diff --git a/src/inc/routes/apiv2/index.mjs b/src/inc/routes/apiv2/index.mjs index 11d1c51..d07daf9 100644 --- a/src/inc/routes/apiv2/index.mjs +++ b/src/inc/routes/apiv2/index.mjs @@ -711,7 +711,12 @@ export default router => { const excludedTags = req.session?.excluded_tags || []; const isOwnerOrAdmin = req.session && (req.session.admin || req.session.is_moderator); - const visibilityFilter = isOwnerOrAdmin ? db`` : db`and coalesce("items".visibility, 0) = 0`; + const sessionUser = req.session?.user ? req.session.user.toLowerCase() : null; + const visibilityFilter = isOwnerOrAdmin + ? db`` + : (sessionUser + ? db`and (coalesce("items".visibility, 0) = 0 or lower("items".username) = ${sessionUser})` + : db`and coalesce("items".visibility, 0) = 0`); const newest = (await db`select max(id) as id from "items"`)[0]?.id || 0; const oldest = (await db`select min(id) as id from "items"`)[0]?.id || 0; diff --git a/src/inc/routes/scroller.mjs b/src/inc/routes/scroller.mjs index d66233d..8d616db 100644 --- a/src/inc/routes/scroller.mjs +++ b/src/inc/routes/scroller.mjs @@ -236,6 +236,13 @@ export default (router, tpl) => { ${sessionId ? db`EXISTS (SELECT 1 FROM favorites WHERE favorites.item_id = items.id AND favorites.user_id = ${sessionId})` : db`false`} AS is_faved `; const sid = req.session ? +req.session.id : null; + const isOwnerOrAdmin = req.session && (req.session.admin || req.session.is_moderator); + const sessionUser = req.session?.user ? req.session.user.toLowerCase() : null; + const visibilityFilter = isOwnerOrAdmin + ? db`` + : (sessionUser + ? db`AND (COALESCE(items.visibility, 0) = 0 OR LOWER(items.username) = ${sessionUser})` + : db`AND COALESCE(items.visibility, 0) = 0`); try { let rows; @@ -268,7 +275,7 @@ export default (router, tpl) => { WHERE ${db.unsafe(modeQuery)} AND items.active = true - AND COALESCE(items.visibility, 0) = 0 + ${visibilityFilter} ${excludeSwfSQL} ${excludePdfSQL} ${excludeArchiveSQL} @@ -293,7 +300,7 @@ export default (router, tpl) => { WHERE ${db.unsafe(modeQuery)} AND items.active = true - AND COALESCE(items.visibility, 0) = 0 + ${visibilityFilter} ${excludeSwfSQL} ${excludePdfSQL} ${excludeArchiveSQL}