pull/18/head
Hugo Landau 10 years ago
parent 7db179406d
commit f8ae24af22

@ -9,3 +9,4 @@ notifications:
irc: irc:
channels: channels:
- "chat.freenode.net##hl-t" - "chat.freenode.net##hl-t"
skip_join: true

@ -671,6 +671,11 @@ func parseImportImpl(rv map[string]interface{}, val *Value, resolve ResolveFunc,
} }
} }
if _, ok := mergedNames[k]; ok {
// already merged
continue
}
// ok // ok
var dv string var dv string
dv, err = resolve(k) dv, err = resolve(k)
@ -678,11 +683,6 @@ func parseImportImpl(rv map[string]interface{}, val *Value, resolve ResolveFunc,
continue continue
} }
if _, ok := mergedNames[k]; ok {
// already merged
continue
}
mergedNames[k] = struct{}{} mergedNames[k] = struct{}{}
err = parseMerge(rv, dv, val, resolve, errFunc, depth, mergeDepth+1, subs, relname, mergedNames) err = parseMerge(rv, dv, val, resolve, errFunc, depth, mergeDepth+1, subs, relname, mergedNames)

@ -1,28 +1,11 @@
package server package server
import "os" import denet "github.com/hlandau/degoutils/net"
import "net"
var hostname string
func init() {
names, err := net.LookupAddr("127.0.0.1")
if err != nil || len(names) == 0 {
hn, err := os.Hostname()
if err != nil {
panic(err)
}
hostname = hn
return
}
hostname = names[0]
}
func (s *Server) ServerName() string { func (s *Server) ServerName() string {
n := s.cfg.SelfName n := s.cfg.SelfName
if n == "" { if n == "" {
n = hostname n = denet.Hostname()
} }
return n return n
} }

@ -7,6 +7,7 @@ import "github.com/hlandau/ncdns/util"
import "github.com/hlandau/ncdns/ncdomain" import "github.com/hlandau/ncdns/ncdomain"
import "github.com/miekg/dns" import "github.com/miekg/dns"
import "github.com/kr/pretty" import "github.com/kr/pretty"
import "path/filepath"
import "time" import "time"
import "strings" import "strings"
import "fmt" import "fmt"
@ -18,7 +19,7 @@ var lookupPageTpl *template.Template
var tplSetFlag = flag.String("tplset", "std", "Subdirectory of tpl/ to look for templates in (default: std)") var tplSetFlag = flag.String("tplset", "std", "Subdirectory of tpl/ to look for templates in (default: std)")
func initTemplates() error { func initTemplates(configDir string) error {
if lookupPageTpl != nil { if lookupPageTpl != nil {
return nil return nil
} }
@ -28,17 +29,17 @@ func initTemplates() error {
} }
var err error var err error
layoutTpl, err = template.ParseFiles(tplFilename("layout")) layoutTpl, err = template.ParseFiles(tplFilename(configDir, "layout"))
if err != nil { if err != nil {
return err return err
} }
mainPageTpl, err = deriveTemplate(tplFilename("main")) mainPageTpl, err = deriveTemplate(tplFilename(configDir, "main"))
if err != nil { if err != nil {
return err return err
} }
lookupPageTpl, err = deriveTemplate(tplFilename("lookup")) lookupPageTpl, err = deriveTemplate(tplFilename(configDir, "lookup"))
if err != nil { if err != nil {
return err return err
} }
@ -54,8 +55,9 @@ func deriveTemplate(filename string) (*template.Template, error) {
return cl.ParseFiles(filename) return cl.ParseFiles(filename)
} }
func tplFilename(filename string) string { func tplFilename(configDir, filename string) string {
return "tpl/" + *tplSetFlag + "/" + filename + ".tpl" s := "tpl/" + *tplSetFlag + "/" + filename + ".tpl"
return filepath.Join(configDir, "..", s)
} }
type webServer struct { type webServer struct {
@ -198,7 +200,7 @@ func clearAllCookies(rw http.ResponseWriter, req *http.Request) {
} }
func webStart(listenAddr string, server *Server) error { func webStart(listenAddr string, server *Server) error {
err := initTemplates() err := initTemplates(server.cfg.ConfigDir)
if err != nil { if err != nil {
return err return err
} }

Loading…
Cancel
Save