diff options
Diffstat (limited to '')
| -rw-r--r-- | cgit.c | 4 | ||||
| -rw-r--r-- | cgit.h | 1 | ||||
| -rw-r--r-- | cgitrc.5.txt | 4 | ||||
| -rw-r--r-- | cmd.c | 2 | ||||
| -rw-r--r-- | shared.c | 1 | ||||
| -rw-r--r-- | ui-tree.c | 4 | 
6 files changed, 13 insertions, 3 deletions
@@ -50,6 +50,8 @@ static void repo_config(struct cgit_repo *repo, const char *name, const char *va  		repo->extra_head_content = xstrdup(value);  	else if (!strcmp(name, "snapshots"))  		repo->snapshots = ctx.cfg.snapshots & cgit_parse_snapshots_mask(value); +	else if (!strcmp(name, "enable-blame")) +		repo->enable_blame = atoi(value);  	else if (!strcmp(name, "enable-commit-graph"))  		repo->enable_commit_graph = atoi(value);  	else if (!strcmp(name, "enable-log-filecount")) @@ -809,6 +811,8 @@ static void print_repo(FILE *f, struct cgit_repo *repo)  		fprintf(f, "repo.homepage=%s\n", repo->homepage);  	if (repo->clone_url)  		fprintf(f, "repo.clone-url=%s\n", repo->clone_url); +	fprintf(f, "repo.enable-blame=%d\n", +	        repo->enable_blame);  	fprintf(f, "repo.enable-commit-graph=%d\n",  	        repo->enable_commit_graph);  	fprintf(f, "repo.enable-log-filecount=%d\n", @@ -94,6 +94,7 @@ struct cgit_repo {  	char *logo_link;  	char *snapshot_prefix;  	int snapshots; +	int enable_blame;  	int enable_commit_graph;  	int enable_log_filecount;  	int enable_log_linecount; diff --git a/cgitrc.5.txt b/cgitrc.5.txt index 34b351b..ba77826 100644 --- a/cgitrc.5.txt +++ b/cgitrc.5.txt @@ -485,6 +485,10 @@ repo.email-filter::  	Override the default email-filter. Default value: none. See also:  	"enable-filter-overrides". See also: "FILTER API". +repo.enable-blame:: +	A flag which can be used to disable the global setting +	`enable-blame'. Default value: none. +  repo.enable-commit-graph::  	A flag which can be used to disable the global setting  	`enable-commit-graph'. Default value: none. @@ -66,7 +66,7 @@ static void about_fn(void)  static void blame_fn(void)  { -	if (ctx.cfg.enable_blame) +	if (ctx.repo->enable_blame)  		cgit_print_blame();  	else  		cgit_print_error_page(403, "Forbidden", "Blame is disabled"); @@ -58,6 +58,7 @@ struct cgit_repo *cgit_add_repo(const char *url)  	ret->homepage = NULL;  	ret->section = ctx.cfg.section;  	ret->snapshots = ctx.cfg.snapshots; +	ret->enable_blame = ctx.cfg.enable_blame;  	ret->enable_commit_graph = ctx.cfg.enable_commit_graph;  	ret->enable_log_filecount = ctx.cfg.enable_log_filecount;  	ret->enable_log_linecount = ctx.cfg.enable_log_linecount; @@ -110,7 +110,7 @@ static void print_object(const struct object_id *oid, const char *path, const ch  	htmlf("blob: %s (", oid_to_hex(oid));  	cgit_plain_link("plain", NULL, NULL, ctx.qry.head,  		        rev, path); -	if (ctx.cfg.enable_blame) { +	if (ctx.repo->enable_blame) {  		html(") (");  		cgit_blame_link("blame", NULL, NULL, ctx.qry.head,  			        rev, path); @@ -251,7 +251,7 @@ static int ls_item(const struct object_id *oid, struct strbuf *base,  	if (!S_ISGITLINK(mode))  		cgit_plain_link("plain", NULL, "button", ctx.qry.head,  				walk_tree_ctx->curr_rev, fullpath.buf); -	if (!S_ISDIR(mode) && ctx.cfg.enable_blame) +	if (!S_ISDIR(mode) && ctx.repo->enable_blame)  		cgit_blame_link("blame", NULL, "button", ctx.qry.head,  				walk_tree_ctx->curr_rev, fullpath.buf);  	html("</td></tr>\n");  |