mirror of
https://tildegit.org/solderpunk/molly-brown.git
synced 2025-04-13 09:29:46 +00:00
Allow overriding directory listing options with .molly files.
This commit is contained in:
parent
7066bad570
commit
a07645dd2e
2 changed files with 18 additions and 10 deletions
|
@ -25,8 +25,11 @@ type Config struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type MollyFile struct {
|
type MollyFile struct {
|
||||||
GeminiExt string
|
GeminiExt string
|
||||||
DefaultLang string
|
DefaultLang string
|
||||||
|
DirectorySort string
|
||||||
|
DirectoryReverse bool
|
||||||
|
DirectoryTitles bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func getConfig(filename string) (Config, error) {
|
func getConfig(filename string) (Config, error) {
|
||||||
|
|
21
handler.go
21
handler.go
|
@ -241,8 +241,14 @@ func parseMollyFiles(path string, info os.FileInfo, config *Config) {
|
||||||
dirs = append(dirs, subpath)
|
dirs = append(dirs, subpath)
|
||||||
path = subpath
|
path = subpath
|
||||||
}
|
}
|
||||||
// Parse files
|
// Initialise MollyFile using main Config
|
||||||
var mollyFile MollyFile
|
var mollyFile MollyFile
|
||||||
|
mollyFile.GeminiExt = config.GeminiExt
|
||||||
|
mollyFile.DefaultLang = config.DefaultLang
|
||||||
|
mollyFile.DirectorySort = config.DirectorySort
|
||||||
|
mollyFile.DirectoryReverse = config.DirectoryReverse
|
||||||
|
mollyFile.DirectoryTitles = config.DirectoryTitles
|
||||||
|
// Parse files
|
||||||
for i := len(dirs) - 1; i >= 0; i-- {
|
for i := len(dirs) - 1; i >= 0; i-- {
|
||||||
dir := dirs[i]
|
dir := dirs[i]
|
||||||
mollyPath := filepath.Join(dir, ".molly")
|
mollyPath := filepath.Join(dir, ".molly")
|
||||||
|
@ -254,14 +260,13 @@ func parseMollyFiles(path string, info os.FileInfo, config *Config) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if mollyFile.GeminiExt != "" {
|
// Overwrite main Config using MollyFile
|
||||||
config.GeminiExt = mollyFile.GeminiExt
|
config.GeminiExt = mollyFile.GeminiExt
|
||||||
}
|
config.DefaultLang = mollyFile.DefaultLang
|
||||||
if mollyFile.DefaultLang != "" {
|
config.DirectorySort = mollyFile.DirectorySort
|
||||||
config.DefaultLang = mollyFile.DefaultLang
|
config.DirectoryReverse = mollyFile.DirectoryReverse
|
||||||
}
|
config.DirectoryTitles = mollyFile.DirectoryTitles
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func generateDirectoryListing(URL *url.URL, path string, config Config) string {
|
func generateDirectoryListing(URL *url.URL, path string, config Config) string {
|
||||||
|
|
Loading…
Add table
Reference in a new issue