about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2009-08-11 10:12:35 +0200
committerLars Hjemli <hjemli@gmail.com>2009-08-11 10:12:35 +0200
commit80550bbe028b551550395653d32a0ba50db540ef (patch)
tree9dbbe6dbdbb705a55ace4524cca1435290ce4d2a
parentui-shared: add support for NO_HTTP=1/--nohttp (diff)
downloadcgit-pink-80550bbe028b551550395653d32a0ba50db540ef.tar.gz
cgit-pink-80550bbe028b551550395653d32a0ba50db540ef.zip
ui-shared: add support for header/footer options when embedded=1
When embedded=1, cgit used to ignore the header and footer options.
But honoring these options when embedded=1 makes it possible to "frame"
the html fragment generated by cgit with any kind of static content,
i.e. it should become easier to integrate cgit with site-specfic
layouts.

Original-patch-by: Mark Constable <markc@renta.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--ui-shared.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/ui-shared.c b/ui-shared.c
index 4175bd8..cf06511 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -481,8 +481,11 @@ void cgit_print_http_headers(struct cgit_context *ctx)
 
 void cgit_print_docstart(struct cgit_context *ctx)
 {
-	if (ctx->cfg.embedded)
+	if (ctx->cfg.embedded) {
+		if (ctx->cfg.header)
+			html_include(ctx->cfg.header);
 		return;
+	}
 
 	char *host = cgit_hosturl();
 	html(cgit_doctype);
@@ -520,7 +523,13 @@ void cgit_print_docstart(struct cgit_context *ctx)
 
 void cgit_print_docend()
 {
-	html("</div>");
+	html("</div> <!-- class=content -->\n");
+	if (ctx.cfg.embedded) {
+		html("</div> <!-- id=cgit -->\n");
+		if (ctx.cfg.footer)
+			html_include(ctx.cfg.footer);
+		return;
+	}
 	if (ctx.cfg.footer)
 		html_include(ctx.cfg.footer);
 	else {
@@ -529,9 +538,7 @@ void cgit_print_docend()
 		cgit_print_date(time(NULL), FMT_LONGDATE, ctx.cfg.local_time);
 		html("</div>\n");
 	}
-	html("</div>");
-	if (ctx.cfg.embedded)
-		return;
+	html("</div> <!-- id=cgit -->\n");
 	html("</body>\n</html>\n");
 }
 
t to ui-commit.cLars Hjemli 2006-12-16gitweb ripoff: set tr:hover to highligt current rowLars Hjemli 2006-12-16Make repo header a link to summary pageLars Hjemli 2006-12-16Move cgit_print_date into ui-shared, reuse in ui-summaryLars Hjemli 2006-12-16Add ui-commit.c + misc ui cleanupsLars Hjemli 2006-12-15Add a common commit parserLars Hjemli 2006-12-14Add simple pager to log pageLars Hjemli 2006-12-13Add separate makefile-rule to clear current cacheLars Hjemli 2006-12-13Remove implementation details from READMELars Hjemli 2006-12-13Small layout adjustments to summary and blob viewLars Hjemli 2006-12-13Add display of tree content w/ui-tree.cLars Hjemli 2006-12-12cache_lock: do xstrdup/free on lockfileLars Hjemli 2006-12-11Don't truncate valid cachefilesLars Hjemli 2006-12-11Move global variables + callback functions into shared.cLars Hjemli 2006-12-11Move functions for generic object output into ui-view.cLars Hjemli 2006-12-11Move log-functions into ui-log.cLars Hjemli 2006-12-11Move repo summary functions into ui-summary.cLars Hjemli 2006-12-11Move functions for repolist output into ui-repolist.cLars Hjemli 2006-12-11Move common output-functions into ui-shared.cLars Hjemli 2006-12-11Rename config.c to parsing.c + move cgit_parse_query from cgit.c to parsing.cLars Hjemli 2006-12-11Avoid infinite loops in caching layerLars Hjemli 2006-12-11Let 'make install' clear all cachefilesLars Hjemli 2006-12-11Fix cache algorithm loopholeLars Hjemli 2006-12-10Add version identifier in generated filesLars Hjemli 2006-12-10Add license file and copyright noticesLars Hjemli 2006-12-10Add caching infrastructureLars Hjemli