gddo: add banner informing users of pkg.go.dev Change-Id: Iccfc68f2f83253aaf5b7edc67128e59cd3454ac4 Reviewed-on: https://go-review.googlesource.com/c/gddo/+/217538 Reviewed-by: Julie Qiu <julie@golang.org>
diff --git a/gddo-server/assets/site.css b/gddo-server/assets/site.css index 52789c2..71da77f 100644 --- a/gddo-server/assets/site.css +++ b/gddo-server/assets/site.css
@@ -82,6 +82,11 @@ display: block; } +.navbar { + border-radius: 0; + margin-bottom: 0; +} + a, .navbar-default .navbar-brand { color: #375eab; } @@ -102,6 +107,44 @@ color: #000; } +.banner { + align-items: center; + background-color: #fffbe0; + display: flex; + justify-content: space-between; + margin-bottom: 20px; + min-height: 40px; + padding: 8px 16px; +} + +.banner-message { + margin-right: 90px; +} + +.banner-action-container { + text-align: right; +} + +.banner-action { + white-space: nowrap; +} + +@media (max-width: 768px) { + .banner { + flex-direction: column; + } + + .banner-message { + align-items: flex-start; + margin-bottom: 10px; + margin-right: 0; + } + + .banner-action-container { + width: 100%; + } +} + .panel-default > .panel-heading { color: #333; background-color: transparent; @@ -121,7 +164,7 @@ display: inline; } -@media (max-width : 768px) { +@media (max-width: 768px) { .form-control { font-size:16px; }
diff --git a/gddo-server/assets/templates/about.html b/gddo-server/assets/templates/about.html index a991fce..de4799d 100644 --- a/gddo-server/assets/templates/about.html +++ b/gddo-server/assets/templates/about.html
@@ -1,5 +1,7 @@ {{define "Head"}}<title>About - GoDoc</title>{{end}} +{{define "PkgGoDevLink"}}<a href="https://pkg.go.dev/about">pkg.go.dev/about</a>{{end}} + {{define "Body"}} <h1>About</h1>
diff --git a/gddo-server/assets/templates/importers.html b/gddo-server/assets/templates/importers.html index d8e3d17..87c8c05 100644 --- a/gddo-server/assets/templates/importers.html +++ b/gddo-server/assets/templates/importers.html
@@ -5,3 +5,7 @@ <h3>Packages that import {{$.pdoc.Name}}</h3> {{template "Pkgs" $.pkgs}} {{end}} + +{{define "PkgGoDevLink"}} + <a href="https://pkg.go.dev{{if .pdoc.ImportPath}}/{{.pdoc.ImportPath}}{{end}}?tab=importedby">pkg.go.dev{{if .pdoc.ImportPath}}/{{.pdoc.ImportPath}}?tab=importedby{{end}}</a> +{{end}}
diff --git a/gddo-server/assets/templates/imports.html b/gddo-server/assets/templates/imports.html index 1fcc10b..3204a9e 100644 --- a/gddo-server/assets/templates/imports.html +++ b/gddo-server/assets/templates/imports.html
@@ -5,3 +5,7 @@ <h3>Packages imported by {{.pdoc.Name}}</h3> {{template "Pkgs" $.pkgs}} {{end}} + +{{define "PkgGoDevLink"}} + <a href="https://pkg.go.dev{{if .pdoc.ImportPath}}/{{.pdoc.ImportPath}}{{end}}?tab=imports">pkg.go.dev{{if .pdoc.ImportPath}}/{{.pdoc.ImportPath}}?tab=imports{{end}}</a> +{{end}}
diff --git a/gddo-server/assets/templates/layout.html b/gddo-server/assets/templates/layout.html index cc6b5a7..577203a 100644 --- a/gddo-server/assets/templates/layout.html +++ b/gddo-server/assets/templates/layout.html
@@ -27,6 +27,14 @@ </div> </div> </nav> +<div class="banner"> + <div class="banner-message"> + Pkg.go.dev is a new destination for Go discovery & docs. Check it out at {{template "PkgGoDevLink" $}} and share your feedback. + </div> + <div class="banner-action-container"> + <a class="banner-action" href="https://blog.golang.org/pkg.go.dev-2020">Learn more</a> + </div> +</div> <div class="container"> {{template "Body" $}}
diff --git a/gddo-server/assets/templates/results.html b/gddo-server/assets/templates/results.html index 9190658..04dc704 100644 --- a/gddo-server/assets/templates/results.html +++ b/gddo-server/assets/templates/results.html
@@ -1,5 +1,9 @@ {{define "Head"}}<title>{{.q}} - GoDoc</title><meta name="robots" content="NOINDEX">{{end}} +{{define "PkgGoDevLink"}} + <a href="https://pkg.go.dev/search?q={{.q}}">pkg.go.dev/search?q={{.q}}</a> +{{end}} + {{define "Body"}} <div class="well"> {{template "SearchBox" .q}}
diff --git a/gddo-server/assets/templates/std.html b/gddo-server/assets/templates/std.html index eb4d731..a5bf0ab 100644 --- a/gddo-server/assets/templates/std.html +++ b/gddo-server/assets/templates/std.html
@@ -1,5 +1,9 @@ {{define "Head"}}<title>Standard Packages - GoDoc</title><meta name="robots" content="NOINDEX">{{end}} +{{define "PkgGoDevLink"}} + <a href="https://pkg.go.dev/std?tab=packages">pkg.go.dev/std?tab=packages</a> +{{end}} + {{define "Body"}} <h1>Go Standard Packages</h1> {{template "Pkgs" .pkgs}}
diff --git a/gddo-server/template.go b/gddo-server/template.go index 35f1171..501525f 100644 --- a/gddo-server/template.go +++ b/gddo-server/template.go
@@ -519,6 +519,12 @@ return result } +const pkgGoDevLinkTmpl = ` +{{define "PkgGoDevLink"}} + <a href="https://pkg.go.dev{{if .pdoc.ImportPath}}/{{.pdoc.ImportPath}}{{end}}">pkg.go.dev{{if .pdoc.ImportPath}}/{{.pdoc.ImportPath}}{{end}}</a> +{{end}} +` + func parseTemplates(dir string, cb *httputil.CacheBusters, v *viper.Viper) (templateMap, error) { m := make(templateMap) htmlSets := [][]string{ @@ -559,6 +565,12 @@ t := htemp.New("").Funcs(hfuncs).Funcs(htemp.FuncMap{ "templateName": func() string { return templateName }, }) + + // Define this block first so that it can be overridden in some + // templates. + if _, err := t.Parse(pkgGoDevLinkTmpl); err != nil { + return nil, err + } if _, err := t.ParseFiles(joinTemplateDir(dir, set)...); err != nil { return nil, err }