e5e30d0915
Return the updated list when setting a list background Add swagger docs for unsplash methods Add unsplash info to search results Fix misspell Fix lint Add rights check for setting and getting backgrounds Show unsplash information when loading a single list Make application id for pingbacks configurable Remove old backgrounds when setting a new one Return 404 if the list does not have a background Implement getting list backgrounds Implement actually setting a photo from unsplash as list background go mod tidy Add migration for background file id Roughly implement setting a list background from unsplash Implement saving a background Add migration for unsplash photo table Add unsplash search Fix parsing page param Fix parsing page param Fix background config Add unsplash wrapper library Add enabled background providers to info endpoint Add config options for backgrounds Add unsplash background provider Add routing handler for backgrounds Add basic background provider interface Co-authored-by: kolaente <k@knt.li> Reviewed-on: https://kolaente.dev/vikunja/api/pulls/568
69 lines
2.3 KiB
Go
69 lines
2.3 KiB
Go
// Copyright 2018-2020 Vikunja and contriubtors. All rights reserved.
|
|
//
|
|
// This file is part of Vikunja.
|
|
//
|
|
// Vikunja is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// Vikunja is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with Vikunja. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
package files
|
|
|
|
import "fmt"
|
|
|
|
// ErrFileDoesNotExist defines an error where a file does not exist in the db
|
|
type ErrFileDoesNotExist struct {
|
|
FileID int64
|
|
}
|
|
|
|
// Error is the error implementation of ErrFileDoesNotExist
|
|
func (err ErrFileDoesNotExist) Error() string {
|
|
return fmt.Sprintf("file %d does not exist", err.FileID)
|
|
}
|
|
|
|
//IsErrFileDoesNotExist checks if an error is ErrFileDoesNotExist
|
|
func IsErrFileDoesNotExist(err error) bool {
|
|
_, ok := err.(ErrFileDoesNotExist)
|
|
return ok
|
|
}
|
|
|
|
// ErrFileIsTooLarge defines an error where a file is larger than the configured limit
|
|
type ErrFileIsTooLarge struct {
|
|
Size uint64
|
|
}
|
|
|
|
// Error is the error implementation of ErrFileIsTooLarge
|
|
func (err ErrFileIsTooLarge) Error() string {
|
|
return fmt.Sprintf("file is too large [Size: %d]", err.Size)
|
|
}
|
|
|
|
//IsErrFileIsTooLarge checks if an error is ErrFileIsTooLarge
|
|
func IsErrFileIsTooLarge(err error) bool {
|
|
_, ok := err.(ErrFileIsTooLarge)
|
|
return ok
|
|
}
|
|
|
|
// ErrFileIsNotUnsplashFile defines an error where a file is not downloaded from unsplash.
|
|
// Used in cases whenever unsplash information about a file is requested, but the file was not downloaded from unsplash.
|
|
type ErrFileIsNotUnsplashFile struct {
|
|
FileID int64
|
|
}
|
|
|
|
// Error is the error implementation of ErrFileIsNotUnsplashFile
|
|
func (err ErrFileIsNotUnsplashFile) Error() string {
|
|
return fmt.Sprintf("file was not downloaded from unsplash [FileID: %d]", err.FileID)
|
|
}
|
|
|
|
//IsErrFileIsNotUnsplashFile checks if an error is ErrFileIsNotUnsplashFile
|
|
func IsErrFileIsNotUnsplashFile(err error) bool {
|
|
_, ok := err.(ErrFileIsNotUnsplashFile)
|
|
return ok
|
|
}
|