Fix the incorrect thumbnails for albums issue (#1198)

* The fix with test

* Fix test's foreign key issue

* 2 more test cases

* Fix the empty album test expectation

* Return Nil for no thumbnail case instead of an empty album, as expected by frontend. More tests for thumbnail priority choice

* Fix failed tests

---------

Co-authored-by: Konstantin Koval
This commit is contained in:
Kostiantyn
2025-05-03 18:48:57 +03:00
committed by GitHub
parent 07be0af1c2
commit 5d46478c01
2 changed files with 247 additions and 1 deletions

View File

@@ -98,7 +98,6 @@ func (a *Album) Thumbnail(db *gorm.DB) (*Media, error) {
INNER JOIN sub_albums ON children.parent_album_id = sub_albums.id
)
SELECT * FROM media
INNER JOIN media_urls ON media_urls.media_id = media.id
WHERE media.album_id IN (SELECT id FROM sub_albums)
LIMIT 1
`
@@ -107,5 +106,9 @@ func (a *Album) Thumbnail(db *gorm.DB) (*Media, error) {
return nil, err
}
if media.ID == 0 {
return nil, nil // Return nil for empty albums
}
return &media, nil
}