From 5f660b309bc695277c67223520499fcc13f3c59f Mon Sep 17 00:00:00 2001 From: Gabriel Arakaki Giovanini Date: Mon, 31 Jul 2023 18:25:13 +0200 Subject: feat: Add album scanner --- pkg/database/repository/media.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'pkg/database/repository/media.go') diff --git a/pkg/database/repository/media.go b/pkg/database/repository/media.go index 6f5b39b..d6addbf 100644 --- a/pkg/database/repository/media.go +++ b/pkg/database/repository/media.go @@ -34,6 +34,10 @@ type ( GPSLongitude *float64 } + Album struct { + ID uint + } + MediaThumbnail struct { Path string } @@ -51,6 +55,17 @@ type ( MIMEType string } + CreateAlbum struct { + ParentID *uint + Name string + Path string + } + + CreateAlbumFile struct { + MediaID uint + AlbumID uint + } + MediaRepository interface { Create(context.Context, *CreateMedia) error Exists(context.Context, string) (bool, error) @@ -66,6 +81,12 @@ type ( ListEmptyThumbnail(context.Context, *Pagination) ([]*Media, error) GetThumbnail(context.Context, uint) (*MediaThumbnail, error) CreateThumbnail(context.Context, uint, *MediaThumbnail) error + + ListEmptyAlbums(context.Context, *Pagination) ([]*Media, error) + ExistsAlbumByAbsolutePath(context.Context, string) (bool, error) + GetAlbumByAbsolutePath(context.Context, string) (*Album, error) + CreateAlbum(context.Context, *CreateAlbum) (*Album, error) + CreateAlbumFile(context.Context, *CreateAlbumFile) error } ) -- cgit v1.2.3