[PATCH] make "Owner" column on index configurable

Florian Pritz bluewind at xinu.at
Thu Nov 15 10:31:53 CET 2012


This is not really needed for personal sites where all repos belong to
the same person. Since it is pretty useful for shared sites however, it
should be configurable.

Signed-off-by: Florian Pritz <bluewind at xinu.at>
---
Lars said he put this on his wip-branch for testing, but
I think it didn't make it into the new upstream.
 cgit.c        | 3 +++
 cgit.h        | 1 +
 cgitrc.5.txt  | 4 ++++
 ui-repolist.c | 9 ++++++---
 4 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/cgit.c b/cgit.c
index a97ed69..11edd81 100644
--- a/cgit.c
+++ b/cgit.c
@@ -172,6 +172,8 @@ void config_cb(const char *name, const char *value)
 		ctx.cfg.enable_http_clone = atoi(value);
 	else if (!strcmp(name, "enable-index-links"))
 		ctx.cfg.enable_index_links = atoi(value);
+	else if (!strcmp(name, "enable-index-owner"))
+		ctx.cfg.enable_index_owner = atoi(value);
 	else if (!strcmp(name, "enable-commit-graph"))
 		ctx.cfg.enable_commit_graph = atoi(value);
 	else if (!strcmp(name, "enable-log-filecount"))
@@ -354,6 +356,7 @@ static void prepare_context(struct cgit_context *ctx)
 	ctx->cfg.logo = "/cgit.png";
 	ctx->cfg.local_time = 0;
 	ctx->cfg.enable_http_clone = 1;
+	ctx->cfg.enable_index_owner = 1;
 	ctx->cfg.enable_tree_linenumbers = 1;
 	ctx->cfg.enable_git_config = 0;
 	ctx->cfg.max_repo_count = 50;
diff --git a/cgit.h b/cgit.h
index 7a99135..f3d2556 100644
--- a/cgit.h
+++ b/cgit.h
@@ -203,6 +203,7 @@ struct cgit_config {
 	int enable_filter_overrides;
 	int enable_http_clone;
 	int enable_index_links;
+	int enable_index_owner;
 	int enable_commit_graph;
 	int enable_log_filecount;
 	int enable_log_linecount;
diff --git a/cgitrc.5.txt b/cgitrc.5.txt
index 95a1049..64bbf7f 100644
--- a/cgitrc.5.txt
+++ b/cgitrc.5.txt
@@ -120,6 +120,10 @@ enable-index-links::
 	each repo in the repository index (specifically, to the "summary",
 	"commit" and "tree" pages). Default value: "0".
 
+enable-index-owner::
+	Flag which, when set to "1", will make cgit display the owner of
+	each repo in the repository index. Default value: "1".
+
 enable-log-filecount::
 	Flag which, when set to "1", will make cgit print the number of
 	modified files for each commit on the repository log page. Default
diff --git a/ui-repolist.c b/ui-repolist.c
index dead1bf..bbcaa1d 100644
--- a/ui-repolist.c
+++ b/ui-repolist.c
@@ -115,7 +115,8 @@ void print_header(int columns)
 	html("<tr class='nohover'>");
 	print_sort_header("Name", "name");
 	print_sort_header("Description", "desc");
-	print_sort_header("Owner", "owner");
+	if (ctx.cfg.enable_index_owner)
+		print_sort_header("Owner", "owner");
 	print_sort_header("Idle", "idle");
 	if (ctx.cfg.enable_index_links)
 		html("<th class='left'>Links</th>");
@@ -294,8 +295,10 @@ void cgit_print_repolist()
 		html_ntxt(ctx.cfg.max_repodesc_len, ctx.repo->desc);
 		html_link_close();
 		html("</td><td>");
-		html_txt(ctx.repo->owner);
-		html("</td><td>");
+		if (ctx.cfg.enable_index_owner) {
+			html_txt(ctx.repo->owner);
+			html("</td><td>");
+		}
 		print_modtime(ctx.repo);
 		html("</td>");
 		if (ctx.cfg.enable_index_links) {
-- 
1.8.0




More information about the CGit mailing list