Fix mixed case Page params handling in content adapters - hugo - [fork] hugo port for 9front
 (HTM) git clone git@git.drkhsh.at/hugo.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 39cf906bc0eb59cfc81be0ccd8985a28567e7599
 (DIR) parent 1aacfced390604eee7fc48eb13b9b45f8399a557
 (HTM) Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
       Date:   Wed, 15 May 2024 11:59:03 +0200
       
       Fix mixed case Page params handling in content adapters
       
       Fixes #12497
       
       Diffstat:
         M hugolib/pagesfromdata/pagesfromgot… |      24 ++++++++++++++++++++++++
         M resources/page/pagemeta/page_front… |       5 +++++
       
       2 files changed, 29 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/hugolib/pagesfromdata/pagesfromgotmpl_integration_test.go b/hugolib/pagesfromdata/pagesfromgotmpl_integration_test.go
       @@ -494,3 +494,27 @@ disableKinds = ['home','section','rss','sitemap','taxonomy','term']
        
                b.AssertFileExists("public/s-1.2.3/p-4.5.6/index.html", true)
        }
       +
       +func TestPagesFromGoParamsIssue12497(t *testing.T) {
       +        t.Parallel()
       +
       +        files := `
       +-- hugo.toml --
       +disableKinds = ['home','section','rss','sitemap','taxonomy','term']
       +-- content/_content.gotmpl --
       +{{ .AddPage (dict "path" "p1" "title" "p1" "params" (dict "paraM1" "param1v" )) }}
       +{{ .AddResource (dict "path" "p1/data1.yaml" "content" (dict "value" "data1" ) "params" (dict "paraM1" "param1v" )) }}
       +-- layouts/_default/single.html --
       +{{ .Title }}|{{ .Params.paraM1 }}
       +{{ range .Resources }}
       +{{ .Name }}|{{ .Params.paraM1 }}
       +{{ end }}
       +`
       +
       +        b := hugolib.Test(t, files)
       +
       +        b.AssertFileContent("public/p1/index.html",
       +                "p1|param1v",
       +                "data1.yaml|param1v",
       +        )
       +}
 (DIR) diff --git a/resources/page/pagemeta/page_frontmatter.go b/resources/page/pagemeta/page_frontmatter.go
       @@ -151,6 +151,11 @@ func (p *PageConfig) Compile(basePath string, pagesFromData bool, ext string, lo
                        p.Path = path.Join(basePath, p.Path)
                }
        
       +        if p.Params == nil {
       +                p.Params = make(maps.Params)
       +        }
       +        maps.PrepareParams(p.Params)
       +
                if p.Content.Markup == "" && p.Content.MediaType == "" {
                        if ext == "" {
                                ext = "md"