From 1f58bf47d67bd9a8e5c8cc7f0f76367d5333b63a Mon Sep 17 00:00:00 2001 From: Deluan Date: Wed, 22 Jan 2020 15:19:37 -0500 Subject: [PATCH] Fix GetStarred for all item types --- persistence/album_repository.go | 5 ++++- persistence/artist_repository.go | 5 ++++- persistence/mediafile_repository.go | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/persistence/album_repository.go b/persistence/album_repository.go index bee915304..7f1565ccd 100644 --- a/persistence/album_repository.go +++ b/persistence/album_repository.go @@ -188,7 +188,10 @@ func (r *albumRepository) PurgeEmpty() error { func (r *albumRepository) GetStarred(userId string, options ...model.QueryOptions) (model.Albums, error) { var starred []album sq := r.newRawQuery(options...).Join("annotation").Where("annotation.item_id = " + r.tableName + ".id") - sq = sq.Where(squirrel.Eq{"annotation.user_id": userId}) + sq = sq.Where(squirrel.And{ + squirrel.Eq{"annotation.user_id": userId}, + squirrel.Eq{"annotation.starred": true}, + }) sql, args, err := sq.ToSql() if err != nil { return nil, err diff --git a/persistence/artist_repository.go b/persistence/artist_repository.go index 689ceb551..cf09aabf2 100644 --- a/persistence/artist_repository.go +++ b/persistence/artist_repository.go @@ -157,7 +157,10 @@ where f.artist_id in ('%s') group by f.artist_id order by f.id`, strings.Join(id func (r *artistRepository) GetStarred(userId string, options ...model.QueryOptions) (model.Artists, error) { var starred []artist sq := r.newRawQuery(options...).Join("annotation").Where("annotation.item_id = " + r.tableName + ".id") - sq = sq.Where(squirrel.Eq{"annotation.user_id": userId}) + sq = sq.Where(squirrel.And{ + squirrel.Eq{"annotation.user_id": userId}, + squirrel.Eq{"annotation.starred": true}, + }) sql, args, err := sq.ToSql() if err != nil { return nil, err diff --git a/persistence/mediafile_repository.go b/persistence/mediafile_repository.go index 5ecbb094d..307192394 100644 --- a/persistence/mediafile_repository.go +++ b/persistence/mediafile_repository.go @@ -144,7 +144,10 @@ func (r *mediaFileRepository) GetRandom(options ...model.QueryOptions) (model.Me func (r *mediaFileRepository) GetStarred(userId string, options ...model.QueryOptions) (model.MediaFiles, error) { var starred []mediaFile sq := r.newRawQuery(options...).Join("annotation").Where("annotation.item_id = " + r.tableName + ".id") - sq = sq.Where(squirrel.Eq{"annotation.user_id": userId}) + sq = sq.Where(squirrel.And{ + squirrel.Eq{"annotation.user_id": userId}, + squirrel.Eq{"annotation.starred": true}, + }) sql, args, err := sq.ToSql() if err != nil { return nil, err