about summary refs log tree commit diff
path: root/ui-stats.h
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2008-12-07 13:17:21 +0100
committerLars Hjemli <hjemli@gmail.com>2008-12-07 13:17:21 +0100
commitfb2f3f6c29bad733723152893c5246a756e4cada (patch)
tree5b2953c0c116f276ca48beee676a6662b6329d95 /ui-stats.h
parentui-stats: enable path-filtered stats (diff)
downloadcgit-pink-fb2f3f6c29bad733723152893c5246a756e4cada.tar.gz
cgit-pink-fb2f3f6c29bad733723152893c5246a756e4cada.zip
ui-stats: replace 'enable-stats' setting with 'max-stats'
The new 'max-stats' and 'repo.max-stats' settings makes it possible to
define the maximum statistics period, both globally and per repo. Hence,
it is now feasible to allow statistics on repositories with a high commit
frequency, like linux-2.6, by setting repo.max-stats to e.g. 'month'.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-stats.h')
-rw-r--r--ui-stats.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/ui-stats.h b/ui-stats.h
index f1d744c..4f13dba 100644
--- a/ui-stats.h
+++ b/ui-stats.h
@@ -3,6 +3,25 @@
 
 #include "cgit.h"
 
+struct cgit_period {
+	const char code;
+	const char *name;
+	int max_periods;
+	int count;
+
+	/* Convert a tm value to the first day in the period */
+	void (*trunc)(struct tm *tm);
+
+	/* Update tm value to start of next/previous period */
+	void (*dec)(struct tm *tm);
+	void (*inc)(struct tm *tm);
+
+	/* Pretty-print a tm value */
+	char *(*pretty)(struct tm *tm);
+};
+
+extern int cgit_find_stats_period(const char *expr, struct cgit_period **period);
+
 extern void cgit_show_stats(struct cgit_context *ctx);
 
 #endif /* UI_STATS_H */