author | Lars Hjemli <hjemli@gmail.com> | 2008-08-06 07:50:10 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2008-08-06 07:50:10 (UTC) |
commit | e352a013aed6e925a10a92916500c7deccf1410a (patch) (side-by-side diff) | |
tree | 7c49bf453bee4f624025d62bae92b4926bf83bfe /ui-shared.c | |
parent | 3c71f597cc932992d5c44196e90f4675a1d54e77 (diff) | |
parent | b2a3d31e8839b53a623b4c99124c2c637d0e3cbb (diff) | |
download | cgit-e352a013aed6e925a10a92916500c7deccf1410a.zip cgit-e352a013aed6e925a10a92916500c7deccf1410a.tar.gz cgit-e352a013aed6e925a10a92916500c7deccf1410a.tar.bz2 |
Merge branch 'lh/atom'
-rw-r--r-- | ui-shared.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ui-shared.c b/ui-shared.c index 197ee37..37c60b2 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -36,2 +36,17 @@ void cgit_print_error(char *msg) +char *cgit_hosturl() +{ + char *host, *port; + + host = getenv("SERVER_NAME"); + if (!host) + return NULL; + port = getenv("SERVER_PORT"); + if (port && atoi(port) != 80) + host = xstrdup(fmt("%s:%d", host, atoi(port))); + else + host = xstrdup(host); + return host; +} + char *cgit_rooturl() @@ -430,2 +445,3 @@ void cgit_print_docstart(struct cgit_context *ctx) { + char *host = cgit_hosturl(); html(cgit_doctype); @@ -447,2 +463,9 @@ void cgit_print_docstart(struct cgit_context *ctx) } + if (host && ctx->repo) { + html("<link rel='alternate' title='Atom feed' href='http://"); + html_attr(cgit_hosturl()); + html_attr(cgit_fileurl(ctx->repo->url, "atom", ctx->qry.path, + fmt("h=%s", ctx->qry.head))); + html("' type='application/atom+xml'/>"); + } html("</head>\n"); |