all repos — elgit @ 9325686a47c6569985ec4691d88a1355585c6de9

fork of legit: web frontend for git, written in go

unify repository metadata access

Alan Pearce
commit

9325686a47c6569985ec4691d88a1355585c6de9

parent

4824077ca3d2cd326880229ba3985bcf70a1fafa

1 file changed, 17 insertions(+), 18 deletions(-)

changed files
M templates/page.gotemplates/page.go
@@ -5,6 +5,7 @@ "fmt"
"strings" "alin.ovh/elgit/config" + "alin.ovh/elgit/data" "alin.ovh/elgit/git" g "alin.ovh/gomponents" c "alin.ovh/gomponents/components"
@@ -18,9 +19,8 @@ }
type PageData struct { Meta config.Meta - Name string + Repo *data.Repository Ref string - Description string Path string Parent string Diff []git.Diff
@@ -31,28 +31,27 @@ Content string
RenderedContent string Log bool Servername string - Gomod bool Error *Error } func RenderHead(data PageData) []g.Node { return []g.Node{ Link(Rel("stylesheet"), Href("/static/style.css"), Type("text/css")), - g.If(data.Servername != "" && data.Gomod, - Meta( + g.Iff(data.Servername != "" && data.Repo.Gomod, func() g.Node { + return Meta( Name("go-import"), - Content(fmt.Sprintf("%s/%s git https://%[1]s/%[2]s", data.Servername, data.Name)), - ), - ), + Content(fmt.Sprintf("%s/%s git https://%[1]s/%[2]s", data.Servername, data.Repo.Name)), + ) + }), } } func RenderNav(data PageData) g.Node { return Nav(Ul( - g.If(data.Name != "", NavItem(joinPaths(data.Name), "summary")), - g.If(data.Name != "", NavItem(joinPaths(data.Name, "refs", ""), "refs")), - g.If(data.Ref != "", NavItem(joinPaths(data.Name, "tree", data.Ref, ""), "tree")), - g.If(data.Ref != "", NavItem(joinPaths(data.Name, "log", data.Ref), "log")), + g.If(data.Repo.Name != "", NavItem(joinPaths(data.Repo.Name), "summary")), + g.If(data.Repo.Name != "", NavItem(joinPaths(data.Repo.Name, "refs", ""), "refs")), + g.If(data.Ref != "", NavItem(joinPaths(data.Repo.Name, "tree", data.Ref, ""), "tree")), + g.If(data.Ref != "", NavItem(joinPaths(data.Repo.Name, "log", data.Ref), "log")), )) }
@@ -64,10 +63,10 @@ func RepoHeader(data PageData) g.Node {
return Header( H2( A(Href("/"), g.Text("all repos")), - g.Textf(" — %s", data.Name), + g.Textf(" — %s", data.Repo.Name), g.If(data.Ref != "", Span(Class("ref"), g.Textf(" @ %s", data.Ref))), ), - H3(Class("desc"), g.Text(data.Description)), + H3(Class("desc"), g.Text(data.Repo.Description)), ) }
@@ -89,11 +88,11 @@ metaTitle := data.Meta.Title
switch { case data.Parent != "": - return fmt.Sprintf("%s — %s (%s): %s/", metaTitle, data.Name, data.Ref, data.Parent) + return fmt.Sprintf("%s — %s (%s): %s/", metaTitle, data.Repo.Name, data.Ref, data.Parent) case data.Path != "": - return fmt.Sprintf("%s — %s (%s): %s", metaTitle, data.Name, data.Ref, data.Path) - case data.Name != "": - return fmt.Sprintf("%s — %s", metaTitle, data.Name) + return fmt.Sprintf("%s — %s (%s): %s", metaTitle, data.Repo.Name, data.Ref, data.Path) + case data.Repo != nil && data.Repo.Name != "": + return fmt.Sprintf("%s — %s", metaTitle, data.Repo.Name) default: return metaTitle }