Revert "Consider root and current section's content type if set in front matter"
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Mon, 9 Jul 2018 08:29:18 +0000 (10:29 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Mon, 9 Jul 2018 08:29:18 +0000 (10:29 +0200)
This reverts commit c790029e1dbb0b66af18d05764bd6045deb2e180.

hugolib/page.go
hugolib/site_sections.go
hugolib/site_sections_test.go
output/layout.go
output/layout_test.go

index c6af07b3a3fc687eb05bec8cbf2c3a29e40998fa..564524825f3235c54e3442e943f31bbb6500a5ec 100644 (file)
@@ -412,26 +412,12 @@ func (p *Page) createLayoutDescriptor() output.LayoutDescriptor {
        default:
        }
 
-       var typeCurrentSection string
-       var typeRootSection string
-       curr := p.CurrentSection()
-       // Make sure we use the contentType only. This is the value from front matter.
-       if curr != nil {
-               typeCurrentSection = curr.contentType
-       }
-       first := p.FirstSection()
-       if first != nil {
-               typeRootSection = first.contentType
-       }
-
        return output.LayoutDescriptor{
-               Kind:               p.Kind,
-               Type:               p.Type(),
-               Lang:               p.Lang(),
-               Layout:             p.Layout,
-               Section:            section,
-               TypeCurrentSection: typeCurrentSection,
-               TypeFirstSection:   typeRootSection,
+               Kind:    p.Kind,
+               Type:    p.Type(),
+               Lang:    p.Lang(),
+               Layout:  p.Layout,
+               Section: section,
        }
 }
 
index 2a92a342438fd2b2a48226815e69d44df0c46ddf..b87388c59ebade21a7ec77e099e00d368676a8b6 100644 (file)
@@ -58,29 +58,6 @@ func (p *Page) CurrentSection() *Page {
        return v.parent
 }
 
-// FirstSection returns the section on level 1 below home, e.g. "/docs".
-// For the home page, this will return itself.
-func (p *Page) FirstSection() *Page {
-       v := p
-       if v.origOnCopy != nil {
-               v = v.origOnCopy
-       }
-
-       if v.parent == nil || v.parent.IsHome() {
-               return v
-       }
-
-       parent := v.parent
-       for {
-               current := parent
-               parent = parent.parent
-               if parent == nil || parent.IsHome() {
-                       return current
-               }
-       }
-
-}
-
 // InSection returns whether the given page is in the current section.
 // Note that this will always return false for pages that are
 // not either regular, home or section pages.
index 01550c9fae71e1b1d188fa641e6ea181c226f34b..772d23e236114cbd74fc653bc371c8ec690b24fc 100644 (file)
@@ -176,8 +176,6 @@ PAG|{{ .Title }}|{{ $sect.InSection . }}
                        active, err := home.InSection(home)
                        assert.NoError(err)
                        assert.True(active)
-                       assert.Equal(p, p.FirstSection())
-
                }},
                {"l1", func(p *Page) {
                        assert.Equal("L1s", p.title)
@@ -252,8 +250,6 @@ PAG|{{ .Title }}|{{ $sect.InSection . }}
                        assert.NoError(err)
                        assert.False(isAncestor)
 
-                       assert.Equal(l1, p.FirstSection())
-
                }},
                {"perm a,link", func(p *Page) {
                        assert.Equal("T9_-1", p.title)
index 2483093b0b34d58f5fed2c9a9f8ceddd3e5a03a9..f83490d817c09fa338b630bd28d06471c643d56d 100644 (file)
@@ -35,12 +35,6 @@ type LayoutDescriptor struct {
        Kind    string
        Lang    string
        Layout  string
-
-       // Any potential type set in the page's current section and the root section
-       // it lives in.
-       TypeFirstSection    string
-       TypeCurrentSection string
-
        // LayoutOverride indicates what we should only look for the above layout.
        LayoutOverride bool
 }
@@ -133,14 +127,6 @@ func resolvePageTemplate(d LayoutDescriptor, f Format) []string {
                b.addTypeVariations(d.Type)
        }
 
-       if d.TypeCurrentSection != "" {
-               b.addTypeVariations(d.TypeCurrentSection)
-       }
-
-       if d.TypeFirstSection != "" {
-               b.addTypeVariations(d.TypeFirstSection)
-       }
-
        switch d.Kind {
        case "page":
                b.addLayoutVariations("single")
index 6754ddb39df3c791d5dfb5b66c8b837fa7d033f8..4b958e9ffb2456e4eb143b50e00e86f453d4909b 100644 (file)
@@ -90,13 +90,8 @@ func TestLayout(t *testing.T) {
                        []string{"_default/mylayout.amp.html", "_default/single.amp.html", "_default/mylayout.html", "_default/single.html"}, 4},
                {"Page with layout and type", LayoutDescriptor{Kind: "page", Layout: "mylayout", Type: "myttype"}, "", ampType,
                        []string{"myttype/mylayout.amp.html", "myttype/single.amp.html", "myttype/mylayout.html"}, 8},
-               {"Page with layout and type with subtype", LayoutDescriptor{Kind: "page", Layout: "mylayout", Type: "myttype/mysubtype", TypeCurrentSection: "cst"}, "", ampType,
-                       []string{"myttype/mysubtype/mylayout.amp.html", "myttype/mysubtype/single.amp.html", "myttype/mysubtype/mylayout.html"}, 12},
-               {"Page with type in section", LayoutDescriptor{Kind: "page", TypeCurrentSection: "cst"}, "", ampType,
-                       []string{"cst/single.amp.html", "cst/single.html", "_default/single.amp.html", "_default/single.html"}, 4},
-               {"Page with type in root section", LayoutDescriptor{Kind: "page", TypeFirstSection: "cst"}, "", ampType,
-                       []string{"cst/single.amp.html", "cst/single.html", "_default/single.amp.html", "_default/single.html"}, 4},
-
+               {"Page with layout and type with subtype", LayoutDescriptor{Kind: "page", Layout: "mylayout", Type: "myttype/mysubtype"}, "", ampType,
+                       []string{"myttype/mysubtype/mylayout.amp.html", "myttype/mysubtype/single.amp.html", "myttype/mysubtype/mylayout.html"}, 8},
                // RSS
                {"RSS Home", LayoutDescriptor{Kind: "home"}, "", RSSFormat,
                        []string{"index.rss.xml", "home.rss.xml", "rss.xml"}, 15},