summaryrefslogtreecommitdiff
path: root/internal/repository
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-05-01 15:57:13 +0300
committerPaul Buetow <paul@buetow.org>2026-05-01 15:57:13 +0300
commit65ee2e4d7f2be8036457e3cdca0e26e09eb56e0b (patch)
treecbd8143db9e81baed51239a628dfedae2dbf375f /internal/repository
parent56666ca87f11e72521dcda00de72438e13899b95 (diff)
add readme and so on
Diffstat (limited to 'internal/repository')
-rw-r--r--internal/repository/media.go6
-rw-r--r--internal/repository/repository.go1
2 files changed, 7 insertions, 0 deletions
diff --git a/internal/repository/media.go b/internal/repository/media.go
index 1657c7a..1fdb365 100644
--- a/internal/repository/media.go
+++ b/internal/repository/media.go
@@ -164,6 +164,12 @@ func (s *SQLite) ListMedia(ctx context.Context, filter MediaFilter) ([]model.Med
conds = append(conds, `media.set_id = ?`)
args = append(args, *filter.SetID)
}
+ if len(filter.SetIDs) > 0 {
+ conds = append(conds, "media.set_id IN ("+placeholders(len(filter.SetIDs))+")")
+ for _, id := range filter.SetIDs {
+ args = append(args, id)
+ }
+ }
if len(filter.AllowedSetIDs) > 0 {
conds = append(conds, "media.set_id IN ("+placeholders(len(filter.AllowedSetIDs))+")")
for _, id := range filter.AllowedSetIDs {
diff --git a/internal/repository/repository.go b/internal/repository/repository.go
index bc44bf5..53635b4 100644
--- a/internal/repository/repository.go
+++ b/internal/repository/repository.go
@@ -93,6 +93,7 @@ type SetPermissionRepo interface {
// MediaFilter defines query parameters for listing media.
type MediaFilter struct {
SetID *int64
+ SetIDs []int64 // multi-set selection
AllowedSetIDs []int64
Type *model.MediaType
Search string