templates: repo and log
1 file changed, 26 insertions(+), 9 deletions(-)
changed files
M routes/routes.go → routes/routes.go
@@ -45,13 +45,7 @@ log.Println(err) return } - var desc string - db, err := os.ReadFile(filepath.Join(path, "description")) - if err == nil { - desc = string(db) - } else { - desc = "" - } + desc := getDescription(path) infos = append(infos, info{ Name: dir.Name(),@@ -83,7 +77,7 @@ d.Write404(w) return } - files, err := gr.FileTree("") + commits, err := gr.Commits() if err != nil { d.Write500(w) log.Println(err)@@ -109,12 +103,25 @@ log.Println(err) return } + tpath := filepath.Join(d.c.Dirs.Templates, "*") + t := template.Must(template.ParseGlob(tpath)) + + if len(commits) >= 5 { + commits = commits[:5] + } + data := make(map[string]any) data["name"] = name data["ref"] = mainBranch data["readme"] = readmeContent + data["commits"] = commits + data["desc"] = getDescription(path) - d.listFiles(files, data, w) + if err := t.ExecuteTemplate(w, "repo", data); err != nil { + log.Println(err) + return + } + return }@@ -283,3 +290,13 @@ f = filepath.Clean(filepath.Join(d.c.Dirs.Static, f)) http.ServeFile(w, r, f) } + +func getDescription(path string) (desc string) { + db, err := os.ReadFile(filepath.Join(path, "description")) + if err == nil { + desc = string(db) + } else { + desc = "" + } + return +}