summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorspf13 <steve.francia@gmail.com>2014-01-28 23:24:59 -0500
committerspf13 <steve.francia@gmail.com>2014-01-28 23:24:59 -0500
commit1882ffabc603a1a5a81b536157610dbbb4e1bd6a (patch)
tree63a8e54af3934258e7c7fa31514d294e1ec29788
parent1da3fd039a4ce4d1193a996b58dd5bae8c6e00e7 (diff)
Adding support for boolean params
-rw-r--r--hugolib/page.go4
-rw-r--r--hugolib/page_test.go4
2 files changed, 8 insertions, 0 deletions
diff --git a/hugolib/page.go b/hugolib/page.go
index 45fa9ad52..3cb831f86 100644
--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -412,6 +412,8 @@ func (page *Page) update(f interface{}) error {
default:
// If not one of the explicit values, store in Params
switch vv := v.(type) {
+ case bool:
+ page.Params[loki] = vv
case string:
page.Params[loki] = vv
case int64, int32, int16, int8, int:
@@ -444,6 +446,8 @@ func (page *Page) GetParam(key string) interface{} {
}
switch v.(type) {
+ case bool:
+ return interfaceToBool(v)
case string:
return interfaceToString(v)
case int64, int32, int16, int8, int:
diff --git a/hugolib/page_test.go b/hugolib/page_test.go
index aef303a77..83bef158c 100644
--- a/hugolib/page_test.go
+++ b/hugolib/page_test.go
@@ -209,6 +209,7 @@ var PAGE_WITH_VARIOUS_FRONTMATTER_TYPES = `+++
a_string = "bar"
an_integer = 1
a_float = 1.3
+a_bool = false
a_date = 1979-05-27T07:32:00Z
+++
Front Matter with various frontmatter types`
@@ -458,6 +459,9 @@ func TestDifferentFrontMatterVarTypes(t *testing.T) {
if page.GetParam("a_float") != 1.3 {
t.Errorf("frontmatter not handling floats correctly should be %s, got: %s", 1.3, page.GetParam("a_float"))
}
+ if page.GetParam("a_bool") != false {
+ t.Errorf("frontmatter not handling bools correctly should be %s, got: %s", false, page.GetParam("a_bool"))
+ }
if page.GetParam("a_date") != dateval {
t.Errorf("frontmatter not handling dates correctly should be %s, got: %s", dateval, page.GetParam("a_date"))
}