A lot of work with albums and photos, still working but want to save working tests/methods

Signed-off-by: Kris Nóva <kris@nivenly.com>
This commit is contained in:
Kris Nóva 2021-02-11 17:16:37 -08:00
parent 6436478402
commit 194f0acb28
79 changed files with 1028 additions and 23 deletions

View file

@ -1,7 +1,5 @@
package api
// GET /api/v1/photos/:uuid
//
// Parameters:
@ -14,6 +12,52 @@ func (v1 *V1Client) GetPhoto(uuid string) (Photo, error) {
return object, err
}
type PhotoOptions struct {
Count int
Offset int
AlbumUID string
Filter string
Merged bool
Country string
Camera int
Order string
Q string
}
const (
DefaultPhotoOptionsCount = 60
DefaultPhotoOptionsOffset = 0
DefaultPhotoOptionsMerged = true
DefaultPhotoOptionsCamera = 0
DefaultPhotoOptionsOrder = "oldest"
)
// GET /api/v1/photos/
//
// http://localhost:8080/api/v1/photos?
// count=60&offset=0&album=aqoe4m9204aigugh&filter=&merged=true&country=&camera=0&order=oldest&q=
func (v1 *V1Client) GetPhotos(options *PhotoOptions) ([]Photo, error) {
var photos []Photo
if options == nil {
options = &PhotoOptions{
Count: DefaultPhotoOptionsCount,
Offset: DefaultPhotoOptionsOffset,
Merged: DefaultPhotoOptionsMerged,
Order: DefaultPhotoOptionsOrder,
Camera: DefaultPhotoOptionsCamera,
}
}
if options.Count == 0 {
return photos, nil
}
if options.Order == "" {
options.Order = DefaultPhotoOptionsOrder
}
err := v1.GET("/api/v1/photos?count=%d&offset=%d&album=%s&filter=%s&merged=%t&country=%s&camera=%d&order=%s&q=%s",
options.Count, options.Offset, options.AlbumUID, options.Filter, options.Merged, options.Country, options.Camera, options.Order, options.Q).JSON(&photos)
return photos, err
}
// PUT /api/v1/photos/:uid
//
// Parameters: