aboutsummaryrefslogtreecommitdiffstats
path: root/cmd.c
diff options
context:
space:
mode:
authorJeff Smith <whydoubt@gmail.com>2017-10-02 06:39:08 +0200
committerJohn Keeping <john@keeping.me.uk>2017-10-03 20:19:34 +0200
commitc1cd290d1f83d3d1c2d081d734e8d213f12cc06b (patch)
treead5027076d139912140c45b6baec2d390389f7a1 /cmd.c
parentf6ffe40d1a2c985494e48dc2d36663ffde1e6044 (diff)
downloadcgit-c1cd290d1f83d3d1c2d081d734e8d213f12cc06b.tar.gz
cgit-c1cd290d1f83d3d1c2d081d734e8d213f12cc06b.tar.xz
ui-blame: add blame UI
Implement a page which provides the blame view of a specified file. This feature is controlled by a new config variable, "enable-blame", which is disabled by default. Signed-off-by: Jeff Smith <whydoubt@gmail.com> Reviewed-by: John Keeping <john@keeping.me.uk>
Diffstat (limited to 'cmd.c')
-rw-r--r--cmd.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/cmd.c b/cmd.c
index d280e95..63f0ae5 100644
--- a/cmd.c
+++ b/cmd.c
@@ -1,6 +1,6 @@
/* cmd.c: the cgit command dispatcher
*
- * Copyright (C) 2006-2014 cgit Development Team <cgit@lists.zx2c4.com>
+ * Copyright (C) 2006-2017 cgit Development Team <cgit@lists.zx2c4.com>
*
* Licensed under GNU General Public License v2
* (see COPYING for full license text)
@@ -11,6 +11,7 @@
#include "cache.h"
#include "ui-shared.h"
#include "ui-atom.h"
+#include "ui-blame.h"
#include "ui-blob.h"
#include "ui-clone.h"
#include "ui-commit.h"
@@ -63,6 +64,14 @@ static void about_fn(void)
cgit_print_site_readme();
}
+static void blame_fn(void)
+{
+ if (ctx.cfg.enable_blame)
+ cgit_print_blame();
+ else
+ cgit_print_error_page(403, "Forbidden", "Blame is disabled");
+}
+
static void blob_fn(void)
{
cgit_print_blob(ctx.qry.sha1, ctx.qry.path, ctx.qry.head, 0);
@@ -164,6 +173,7 @@ struct cgit_cmd *cgit_get_cmd(void)
def_cmd(HEAD, 1, 0, 1),
def_cmd(atom, 1, 0, 0),
def_cmd(about, 0, 0, 0),
+ def_cmd(blame, 1, 1, 0),
def_cmd(blob, 1, 0, 0),
def_cmd(commit, 1, 1, 0),
def_cmd(diff, 1, 1, 0),