diff options
author | Runxi Yu <me@runxiyu.org> | 2025-02-10 16:14:01 +0800 |
---|---|---|
committer | Runxi Yu <me@runxiyu.org> | 2025-02-10 16:14:01 +0800 |
commit | e8c9cd78b13d19bac6865b9fdb89fe1e4d55ee19 (patch) | |
tree | 35eafb6f1efa17ea162b9d0d684b9ccbc38ca7bf /handle_repo_index.go | |
parent | repo_tree: Use x--- to indicate modes that aren't convertable (diff) | |
download | forge-e8c9cd78b13d19bac6865b9fdb89fe1e4d55ee19.tar.gz forge-e8c9cd78b13d19bac6865b9fdb89fe1e4d55ee19.tar.zst forge-e8c9cd78b13d19bac6865b9fdb89fe1e4d55ee19.zip |
git_misc: Abstract tree-listing into build_display_git_tree
Diffstat (limited to '')
-rw-r--r-- | handle_repo_index.go | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/handle_repo_index.go b/handle_repo_index.go index 8fe6b8d..8418d70 100644 --- a/handle_repo_index.go +++ b/handle_repo_index.go @@ -51,26 +51,9 @@ func handle_repo_index(w http.ResponseWriter, r *http.Request) { _, _ = w.Write([]byte("Error getting file tree: " + err.Error())) return } - data["readme"] = render_readme_at_tree(tree) - display_git_tree := make([]display_git_tree_entry_t, 0) - for _, entry := range tree.Entries { - display_git_tree_entry := display_git_tree_entry_t{} - os_mode, err := entry.Mode.ToOSFileMode() - if err != nil { - display_git_tree_entry.Mode = "x---" - } else { - display_git_tree_entry.Mode = os_mode.String()[:4] - } - display_git_tree_entry.Is_file = entry.Mode.IsFile() - display_git_tree_entry.Size, err = tree.Size(entry.Name) - if err != nil { - display_git_tree_entry.Size = 0 - } - display_git_tree_entry.Name = entry.Name - display_git_tree = append(display_git_tree, display_git_tree_entry) - } - data["files"] = display_git_tree + data["readme"] = render_readme_at_tree(tree) + data["files"] = build_display_git_tree(tree) err = templates.ExecuteTemplate(w, "repo_index", data) if err != nil { |