826addb4c1
Signed-off-by: Michael Mayer <michael@photoprism.app>
64 lines
1.6 KiB
Go
64 lines
1.6 KiB
Go
package config
|
|
|
|
import (
|
|
"path"
|
|
"path/filepath"
|
|
"strings"
|
|
|
|
"github.com/photoprism/photoprism/internal/i18n"
|
|
"github.com/photoprism/photoprism/pkg/clean"
|
|
"github.com/photoprism/photoprism/pkg/fs"
|
|
)
|
|
|
|
// DefaultTheme returns the default user interface theme name.
|
|
func (c *Config) DefaultTheme() string {
|
|
if c.options.DefaultTheme == "" || c.NoSponsor() {
|
|
return "default"
|
|
}
|
|
|
|
return c.options.DefaultTheme
|
|
}
|
|
|
|
// DefaultLocale returns the default user interface language locale name.
|
|
func (c *Config) DefaultLocale() string {
|
|
if c.options.DefaultLocale == "" {
|
|
return i18n.Default.Locale()
|
|
}
|
|
|
|
return c.options.DefaultLocale
|
|
}
|
|
|
|
// WallpaperUri returns the login screen background image `URI`.
|
|
func (c *Config) WallpaperUri() string {
|
|
if c.NoSponsor() {
|
|
return ""
|
|
} else if strings.Contains(c.options.WallpaperUri, "/") {
|
|
return c.options.WallpaperUri
|
|
}
|
|
|
|
assetPath := "img/wallpaper"
|
|
|
|
// Empty URI?
|
|
if c.options.WallpaperUri == "" {
|
|
if !fs.PathExists(filepath.Join(c.StaticPath(), assetPath)) {
|
|
return ""
|
|
}
|
|
|
|
c.options.WallpaperUri = "welcome.jpg"
|
|
} else if !strings.Contains(c.options.WallpaperUri, ".") {
|
|
c.options.WallpaperUri += fs.ExtJPEG
|
|
}
|
|
|
|
// Valid URI? Local file?
|
|
if p := clean.Path(c.options.WallpaperUri); p == "" {
|
|
c.options.WallpaperUri = ""
|
|
} else if fs.FileExists(path.Join(c.StaticPath(), assetPath, p)) {
|
|
c.options.WallpaperUri = path.Join(c.StaticUri(), assetPath, p)
|
|
} else if fs.FileExists(c.CustomStaticFile(path.Join(assetPath, p))) {
|
|
c.options.WallpaperUri = path.Join(c.CustomStaticUri(), assetPath, p)
|
|
} else {
|
|
c.options.WallpaperUri = ""
|
|
}
|
|
|
|
return c.options.WallpaperUri
|
|
}
|