summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2009-07-25 12:19:31 +0200
committerLars Hjemli <hjemli@gmail.com>2009-07-25 12:19:31 +0200
commitef0c6aadf70e33ef63f0a68ca16338a49d0a3f1f (patch)
tree4115c32dc27aa18840dda2c940ca10b4a7d0cf86
parent0cbb50841ac82e08e715bbff614f96c7d5ba22fa (diff)
Add support for 'noheader' option
This option can be used to disable the standard cgit page header, which
might be useful in combination with the 'embedded' option.

Suggested-by: Mark Constable <markc@renta.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--cgit.c2
-rw-r--r--cgit.h1
-rw-r--r--ui-shared.c20
3 files changed, 16 insertions, 7 deletions
diff --git a/cgit.c b/cgit.c
index 2aef44d..38f0fdd 100644
--- a/cgit.c
+++ b/cgit.c
@@ -49,6 +49,8 @@ void config_cb(const char *name, const char *value)
 			ctx.cfg.virtual_root = "";
 	} else if (!strcmp(name, "nocache"))
 		ctx.cfg.nocache = atoi(value);
+	else if (!strcmp(name, "noheader"))
+		ctx.cfg.noheader = atoi(value);
 	else if (!strcmp(name, "snapshots"))
 		ctx.cfg.snapshots = cgit_parse_snapshots_mask(value);
 	else if (!strcmp(name, "enable-index-links"))
diff --git a/cgit.h b/cgit.h
index 73d7208..1056231 100644
--- a/cgit.h
+++ b/cgit.h
@@ -172,6 +172,7 @@ struct cgit_config {
 	int summary_log;
 	int summary_tags;
 	int embedded;
+	int noheader;
 };
 
 struct cgit_page {
diff --git a/ui-shared.c b/ui-shared.c
index f18b2c7..5e03a7a 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -611,14 +611,8 @@ char *hc(struct cgit_cmd *cmd, const char *page)
 	return (strcmp(cmd ? cmd->name : fallback_cmd, page) ? NULL : "active");
 }
 
-void cgit_print_pageheader(struct cgit_context *ctx)
+static void print_header(struct cgit_context *ctx)
 {
-	struct cgit_cmd *cmd = cgit_get_cmd(ctx);
-
-	if (!cmd && ctx->repo)
-		fallback_cmd = "summary";
-
-	html("<div id='cgit'>");
 	html("<table id='header'>\n");
 	html("<tr>\n");
 	html("<td class='logo' rowspan='2'><a href='");
@@ -659,6 +653,18 @@ void cgit_print_pageheader(struct cgit_context *ctx)
 			html_include(ctx->cfg.index_info);
 	}
 	html("</td></tr></table>\n");
+}
+
+void cgit_print_pageheader(struct cgit_context *ctx)
+{
+	struct cgit_cmd *cmd = cgit_get_cmd(ctx);
+
+	if (!cmd && ctx->repo)
+		fallback_cmd = "summary";
+
+	html("<div id='cgit'>");
+	if (!ctx->cfg.noheader)
+		print_header(ctx);
 
 	html("<table class='tabs'><tr><td>\n");
 	if (ctx->repo) {