about summary refs log tree commit diff
path: root/ui-shared.c
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2010-12-23 12:47:54 +0100
committerLars Hjemli <hjemli@gmail.com>2011-02-19 14:41:39 +0100
commit808c685ebb7cd2d24d3881b74e3be2439bd1393b (patch)
tree5bb224b73bbbc7d57864c587cc022fcc9826f4b3 /ui-shared.c
parentui-stats: Remove unnecessary #include (diff)
downloadcgit-pink-808c685ebb7cd2d24d3881b74e3be2439bd1393b.tar.gz
cgit-pink-808c685ebb7cd2d24d3881b74e3be2439bd1393b.zip
implement repo.logo and repo.logo-link
Allow for per repo logo and logo-link; Use global logo and logo-link per
default.

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-shared.c')
-rw-r--r--ui-shared.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/ui-shared.c b/ui-shared.c
index ae29615..7efae7a 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -756,17 +756,27 @@ static void cgit_print_path_crumbs(struct cgit_context *ctx, char *path)
 
 static void print_header(struct cgit_context *ctx)
 {
+	char *logo = NULL, *logo_link = NULL;
+
 	html("<table id='header'>\n");
 	html("<tr>\n");
 
-	if (ctx->cfg.logo && ctx->cfg.logo[0] != 0) {
+	if (ctx->repo && ctx->repo->logo && *ctx->repo->logo)
+		logo = ctx->repo->logo;
+	else
+		logo = ctx->cfg.logo;
+	if (ctx->repo && ctx->repo->logo_link && *ctx->repo->logo_link)
+		logo_link = ctx->repo->logo_link;
+	else
+		logo_link = ctx->cfg.logo_link;
+	if (logo && *logo) {
 		html("<td class='logo' rowspan='2'><a href='");
-		if (ctx->cfg.logo_link)
-			html_attr(ctx->cfg.logo_link);
+		if (logo_link && *logo_link)
+			html_attr(logo_link);
 		else
 			html_attr(cgit_rooturl());
 		html("'><img src='");
-		html_attr(ctx->cfg.logo);
+		html_attr(logo);
 		html("' alt='cgit logo'/></a></td>\n");
 	}