From 6cb469d0f09abed57004165a79a16156eb09cd2d Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Mon, 10 Feb 2025 08:00:44 +0800 Subject: repo_index: Add file list --- handle_repo_index.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'handle_repo_index.go') diff --git a/handle_repo_index.go b/handle_repo_index.go index ab11500..7674423 100644 --- a/handle_repo_index.go +++ b/handle_repo_index.go @@ -68,6 +68,25 @@ func handle_repo_index(w http.ResponseWriter, r *http.Request) { readme_rendered_safe := template.HTML(bluemonday.UGCPolicy().SanitizeBytes(readme_rendered_unsafe.Bytes())) data["readme"] = readme_rendered_safe + 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 = "----------" + } else { + display_git_tree_entry.Mode = os_mode.String() + } + 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 + err = templates.ExecuteTemplate(w, "repo_index", data) if err != nil { w.Write([]byte("Error rendering template: " + err.Error())) -- cgit v1.2.3