diff options
| author | Lars Hjemli <hjemli@gmail.com> | 2009-08-11 10:12:35 +0200 | 
|---|---|---|
| committer | Lars Hjemli <hjemli@gmail.com> | 2009-08-11 10:12:35 +0200 | 
| commit | 80550bbe028b551550395653d32a0ba50db540ef (patch) | |
| tree | 9dbbe6dbdbb705a55ace4524cca1435290ce4d2a | |
| parent | ui-shared: add support for NO_HTTP=1/--nohttp (diff) | |
| download | cgit-80550bbe028b551550395653d32a0ba50db540ef.tar.gz cgit-80550bbe028b551550395653d32a0ba50db540ef.tar.bz2 cgit-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.c | 17 | 
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");  } | 
