shithub: hugo

Download patch

ref: 30d4a26ba07591e423f9a391d58debc990dd087c
parent: 93f3d604c6403c9e018a55590cfb30bc06f670dd
author: spf13 <[email protected]>
date: Mon Oct 20 13:51:53 EDT 2014

Handlers WIP (builds)

--- a/hugolib/handler_page.go
+++ b/hugolib/handler_page.go
@@ -24,7 +24,7 @@
 
 var markdown = Handle{
 	extensions: []string{"mdown", "markdown", "md"},
-	readrun: func(f *source.File, results HandleResults) {
+	readrun: func(f *source.File, s *Site, results HandleResults) {
 		page, err := NewPage(f.Path())
 		if err != nil {
 			results <- HandledResult{file: f, err: err}
@@ -33,6 +33,9 @@
 		if err := page.ReadFrom(f.Contents); err != nil {
 			results <- HandledResult{file: f, err: err}
 		}
+
+		page.Site = &s.Info
+		page.Tmpl = s.Tmpl
 
 		results <- HandledResult{file: f, page: page, err: err}
 	},
--- a/hugolib/handlers.go
+++ b/hugolib/handlers.go
@@ -16,7 +16,7 @@
 import "github.com/spf13/hugo/source"
 
 type Handler interface {
-	Read(*source.File, HandleResults)
+	Read(*source.File, *Site, HandleResults)
 	//Render()
 	//Convert()
 	Extensions() []string
@@ -30,7 +30,7 @@
 
 type HandleResults chan<- HandledResult
 
-type ReadFunc func(*source.File, HandleResults)
+type ReadFunc func(*source.File, *Site, HandleResults)
 
 type Handle struct {
 	extensions []string
@@ -43,8 +43,8 @@
 	return h.extensions
 }
 
-func (h Handle) Read(s *source.File, results HandleResults) {
-	h.readrun(s, results)
+func (h Handle) Read(f *source.File, s *Site, results HandleResults) {
+	h.readrun(f, s, results)
 }
 
 func RegisterHandler(h Handler) {
--- a/hugolib/site.go
+++ b/hugolib/site.go
@@ -402,14 +402,10 @@
 	for file := range files {
 		h := FindHandler(file.Extension())
 		if h != nil {
-			h.Read(file, results)
+			h.Read(file, s, results)
 		} else {
 			jww.ERROR.Println("Unsupported File Type", file.Path())
 		}
-
-		// TODO: Figure out Site stuff
-		//page.Site = &s.Info
-		//page.Tmpl = s.Tmpl
 	}
 }