Images section (#813)

* Add new configuration options
* Refactor scan/clean
* Schema changes
* Add details to galleries
* Remove redundant code
* Refine thumbnail generation
* Gallery overhaul
* Don't allow modifying zip gallery images
* Show gallery card overlays
* Hide zoom slider when not in grid mode
This commit is contained in:
WithoutPants
2020-10-13 10:12:46 +11:00
committed by GitHub
parent df3252e24f
commit aca2c7c5f4
147 changed files with 12483 additions and 946 deletions

View File

@@ -27,6 +27,21 @@ const DefaultMaxSessionAge = 60 * 60 * 1 // 1 hours
const Database = "database"
const Exclude = "exclude"
const ImageExclude = "image_exclude"
const VideoExtensions = "video_extensions"
var defaultVideoExtensions = []string{"m4v", "mp4", "mov", "wmv", "avi", "mpg", "mpeg", "rmvb", "rm", "flv", "asf", "mkv", "webm"}
const ImageExtensions = "image_extensions"
var defaultImageExtensions = []string{"png", "jpg", "jpeg", "gif", "webp"}
const GalleryExtensions = "gallery_extensions"
var defaultGalleryExtensions = []string{"zip", "cbz"}
const CreateGalleriesFromFolders = "create_galleries_from_folders"
// CalculateMD5 is the config key used to determine if MD5 should be calculated
// for video files.
@@ -118,8 +133,21 @@ func GetConfigPath() string {
return filepath.Dir(configFileUsed)
}
func GetStashPaths() []string {
return viper.GetStringSlice(Stash)
func GetStashPaths() []*models.StashConfig {
var ret []*models.StashConfig
if err := viper.UnmarshalKey(Stash, &ret); err != nil || len(ret) == 0 {
// fallback to legacy format
ss := viper.GetStringSlice(Stash)
ret = nil
for _, path := range ss {
toAdd := &models.StashConfig{
Path: path,
}
ret = append(ret, toAdd)
}
}
return ret
}
func GetCachePath() string {
@@ -158,6 +186,38 @@ func GetExcludes() []string {
return viper.GetStringSlice(Exclude)
}
func GetImageExcludes() []string {
return viper.GetStringSlice(ImageExclude)
}
func GetVideoExtensions() []string {
ret := viper.GetStringSlice(VideoExtensions)
if ret == nil {
ret = defaultVideoExtensions
}
return ret
}
func GetImageExtensions() []string {
ret := viper.GetStringSlice(ImageExtensions)
if ret == nil {
ret = defaultImageExtensions
}
return ret
}
func GetGalleryExtensions() []string {
ret := viper.GetStringSlice(GalleryExtensions)
if ret == nil {
ret = defaultGalleryExtensions
}
return ret
}
func GetCreateGalleriesFromFolders() bool {
return viper.GetBool(CreateGalleriesFromFolders)
}
func GetLanguage() string {
ret := viper.GetString(Language)
@@ -204,7 +264,7 @@ func GetScraperCDPPath() string {
func GetStashBoxes() []*models.StashBox {
var boxes []*models.StashBox
_ = viper.UnmarshalKey(StashBoxes, &boxes)
viper.UnmarshalKey(StashBoxes, &boxes)
return boxes
}