aboutsummaryrefslogtreecommitdiffstats
path: root/cmd.c
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2008-12-06 17:38:19 +0100
committerLars Hjemli <hjemli@gmail.com>2008-12-06 17:38:19 +0100
commitf86a23ff537258d36bf8f1876fa7a4bede6673d8 (patch)
tree8328d415416058cdc5b0fd2c6564ddcab5766c7a /cmd.c
parent140012d7a8e51df5a9f9c556696778b86ade4fc9 (diff)
Add a 'stats' page to each repo
This new page, which is disabled by default, can be used to print some statistics about the number of commits per period in the repository, where period can be either weeks, months, quarters or years. The function can be activated globally by setting 'enable-stats=1' in cgitrc and disabled for individual repos by setting 'repo.enable-stats=0'. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'cmd.c')
-rw-r--r--cmd.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/cmd.c b/cmd.c
index 5b3c14c..744bf84 100644
--- a/cmd.c
+++ b/cmd.c
@@ -21,6 +21,7 @@
#include "ui-refs.h"
#include "ui-repolist.h"
#include "ui-snapshot.h"
+#include "ui-stats.h"
#include "ui-summary.h"
#include "ui-tag.h"
#include "ui-tree.h"
@@ -109,6 +110,14 @@ static void snapshot_fn(struct cgit_context *ctx)
ctx->repo->snapshots, ctx->qry.nohead);
}
+static void stats_fn(struct cgit_context *ctx)
+{
+ if (ctx->repo->enable_stats)
+ cgit_show_stats(ctx);
+ else
+ cgit_print_error("Stats disabled for this repo");
+}
+
static void summary_fn(struct cgit_context *ctx)
{
cgit_print_summary();
@@ -145,6 +154,7 @@ struct cgit_cmd *cgit_get_cmd(struct cgit_context *ctx)
def_cmd(refs, 1, 1),
def_cmd(repolist, 0, 0),
def_cmd(snapshot, 1, 0),
+ def_cmd(stats, 1, 1),
def_cmd(summary, 1, 1),
def_cmd(tag, 1, 1),
def_cmd(tree, 1, 1),