summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2007-05-19 00:00:25 +0200
committerLars Hjemli <hjemli@gmail.com>2007-05-19 00:00:25 +0200
commitde69ce020c4ccd7146d6ac72bbd8f417088e8c03 (patch)
tree38abaae795c5465f8086ed325b4a6587de76268e
parent5e75128a8bee885d83563d8c521172328d511d12 (diff)
Teach cgit howto include an external file on index page.
The new parameter index-header can be used to name an external file
which will be included verbatim at the top of the index page.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--cgit.h1
-rw-r--r--shared.c3
-rw-r--r--ui-repolist.c5
3 files changed, 9 insertions, 0 deletions
diff --git a/cgit.h b/cgit.h
index fc44a71..3ee11bb 100644
--- a/cgit.h
+++ b/cgit.h
@@ -75,6 +75,7 @@ extern struct repoinfo *cgit_repo;
 extern char *cgit_root_title;
 extern char *cgit_css;
 extern char *cgit_logo;
+extern char *cgit_index_header;
 extern char *cgit_logo_link;
 extern char *cgit_module_link;
 extern char *cgit_virtual_root;
diff --git a/shared.c b/shared.c
index 53cd9b0..54b1813 100644
--- a/shared.c
+++ b/shared.c
@@ -14,6 +14,7 @@ struct repoinfo *cgit_repo;
 char *cgit_root_title   = "Git repository browser";
 char *cgit_css          = "/cgit.css";
 char *cgit_logo         = "/git-logo.png";
+char *cgit_index_header = NULL;
 char *cgit_logo_link    = "http://www.kernel.org/pub/software/scm/git/docs/";
 char *cgit_module_link  = "./?repo=%s&page=commit&id=%s";
 char *cgit_virtual_root = NULL;
@@ -101,6 +102,8 @@ void cgit_global_config_cb(const char *name, const char *value)
 		cgit_css = xstrdup(value);
 	else if (!strcmp(name, "logo"))
 		cgit_logo = xstrdup(value);
+	else if (!strcmp(name, "index-header"))
+		cgit_index_header = xstrdup(value);
 	else if (!strcmp(name, "logo-link"))
 		cgit_logo_link = xstrdup(value);
 	else if (!strcmp(name, "module-link"))
diff --git a/ui-repolist.c b/ui-repolist.c
index d7311e4..8e367a2 100644
--- a/ui-repolist.c
+++ b/ui-repolist.c
@@ -17,6 +17,11 @@ void cgit_print_repolist(struct cacheitem *item)
 	cgit_print_pageheader(cgit_root_title, 0);
 
 	html("<table class='list nowrap'>");
+	if (cgit_index_header) {
+		html("<tr class='nohover'><td colspan='4' class='include-block'>");
+		html_include(cgit_index_header);
+		html("</td></tr>");
+	}
 	html("<tr class='nohover'>"
 	     "<th class='left'>Name</th>"
 	     "<th class='left'>Description</th>"