summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--cgit.h4
-rw-r--r--cgitrc10
-rw-r--r--shared.c14
-rw-r--r--ui-log.c33
4 files changed, 48 insertions, 13 deletions
diff --git a/cgit.h b/cgit.h
index 290401f..ed100a7 100644
--- a/cgit.h
+++ b/cgit.h
@@ -40,2 +40,4 @@ struct repoinfo {
int snapshots;
+ int enable_log_filecount;
+ int enable_log_linecount;
};
@@ -83,2 +85,4 @@ extern int cgit_nocache;
extern int cgit_snapshots;
+extern int cgit_enable_log_filecount;
+extern int cgit_enable_log_linecount;
extern int cgit_max_lock_attempts;
diff --git a/cgitrc b/cgitrc
index f923cc4..eaa9ce3 100644
--- a/cgitrc
+++ b/cgitrc
@@ -14,2 +14,10 @@
+## Enable/disable display of 'number of files changed' in log view
+#enable-log-filecount=0
+
+
+## Enable/disable display of 'number of lines changed' in log view
+#enable-log-linecount=0
+
+
## Specify a root for virtual urls. This makes cgit generate urls like
@@ -99,2 +107,4 @@
#repo.snapshots=1 # override a sitewide snapshot-setting
+#repo.enable-log-filecount=0 # override the default filecount setting
+#repo.enable-log-linecount=0 # override the default linecount setting
#repo.module-link=/git/%s/commit/?id=%s # override the standard module-link
diff --git a/shared.c b/shared.c
index 752ceac..53cd9b0 100644
--- a/shared.c
+++ b/shared.c
@@ -24,2 +24,4 @@ int cgit_nocache = 0;
int cgit_snapshots = 0;
+int cgit_enable_log_filecount = 0;
+int cgit_enable_log_linecount = 0;
int cgit_max_lock_attempts = 5;
@@ -87,2 +89,4 @@ struct repoinfo *add_repo(const char *url)
ret->snapshots = cgit_snapshots;
+ ret->enable_log_filecount = cgit_enable_log_filecount;
+ ret->enable_log_linecount = cgit_enable_log_linecount;
ret->module_link = cgit_module_link;
@@ -109,2 +113,6 @@ void cgit_global_config_cb(const char *name, const char *value)
cgit_snapshots = atoi(value);
+ else if (!strcmp(name, "enable-log-filecount"))
+ cgit_enable_log_filecount = atoi(value);
+ else if (!strcmp(name, "enable-log-linecount"))
+ cgit_enable_log_linecount = atoi(value);
else if (!strcmp(name, "cache-root"))
@@ -138,3 +146,7 @@ void cgit_global_config_cb(const char *name, const char *value)
else if (cgit_repo && !strcmp(name, "repo.snapshots"))
- cgit_repo->snapshots = atoi(value);
+ cgit_repo->snapshots = cgit_snapshots * atoi(value);
+ else if (cgit_repo && !strcmp(name, "repo.enable-log-filecount"))
+ cgit_repo->enable_log_filecount = cgit_enable_log_filecount * atoi(value);
+ else if (cgit_repo && !strcmp(name, "repo.enable-log-linecount"))
+ cgit_repo->enable_log_linecount = cgit_enable_log_linecount * atoi(value);
else if (cgit_repo && !strcmp(name, "repo.module-link"))
diff --git a/ui-log.c b/ui-log.c
index 9d0ec02..4237921 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -21,3 +21,4 @@ void inspect_files(struct diff_filepair *pair)
files++;
- cgit_diff_files(pair->one->sha1, pair->two->sha1, count_lines);
+ if (cgit_repo->enable_log_linecount)
+ cgit_diff_files(pair->one->sha1, pair->two->sha1, count_lines);
}
@@ -41,9 +42,13 @@ void print_commit(struct commit *commit)
html_link_close();
- files = 0;
- lines = 0;
- cgit_diff_commit(commit, inspect_files);
- html("</td><td class='right'>");
- htmlf("%d", files);
- html("</td><td class='right'>");
- htmlf("%d", lines);
+ if (cgit_repo->enable_log_filecount) {
+ files = 0;
+ lines = 0;
+ cgit_diff_commit(commit, inspect_files);
+ html("</td><td class='right'>");
+ htmlf("%d", files);
+ if (cgit_repo->enable_log_linecount) {
+ html("</td><td class='right'>");
+ htmlf("%d", lines);
+ }
+ }
html("</td><td>");
@@ -83,6 +88,10 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *path)
html("<tr class='nohover'><th class='left'>Date</th>"
- "<th class='left'>Message</th>"
- "<th class='left'>Files</th>"
- "<th class='left'>Lines</th>"
- "<th class='left'>Author</th></tr>\n");
+ "<th class='left'>Message</th>");
+
+ if (cgit_repo->enable_log_filecount) {
+ html("<th class='left'>Files</th>");
+ if (cgit_repo->enable_log_linecount)
+ html("<th class='left'>Lines</th>");
+ }
+ html("<th class='left'>Author</th></tr>\n");