fix: deduplicate photos in gallery by filename, remove duplicate setState

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
denshooter
2026-02-18 16:57:42 +01:00
parent ab7e540e25
commit d5fc2e7ab8
2 changed files with 7 additions and 3 deletions
-1
View File
@@ -158,7 +158,6 @@ export default function AdminPage() {
setRecipes(Array.isArray(recipesData) ? recipesData : [])
setFamilyUploads(Array.isArray(uploadsData) ? uploadsData : [])
setTimelineContributions(Array.isArray(contributionsData) ? contributionsData : [])
setTimelineContributions(Array.isArray(contributionsData) ? contributionsData : [])
}, [])
useEffect(() => {
+7 -2
View File
@@ -154,8 +154,13 @@ export default async function HomePage() {
)
} catch {}
// Merge all photos
const allPhotos = [...photos, ...timelinePhotos, ...mediaContribPhotos]
// Merge all photos, deduplicate by filename
const seenFilenames = new Set<string>()
const allPhotos = [...photos, ...timelinePhotos, ...mediaContribPhotos].filter(p => {
if (seenFilenames.has(p.filename)) return false
seenFilenames.add(p.filename)
return true
})
const recipes = plain<Recipe>(
db.prepare('SELECT * FROM recipes ORDER BY sort_order, title').all()