-rw-r--r-- | ui-shared.c | 37 |
1 files changed, 27 insertions, 10 deletions
diff --git a/ui-shared.c b/ui-shared.c index 172499c..bca50aa 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -42,2 +42,10 @@ void cgit_print_error(char *msg) +char *cgit_rooturl() +{ + if (cgit_virtual_root) + return fmt("%s/", cgit_virtual_root); + else + return "./cgit.cgi"; +} + char *cgit_repourl(const char *reponame) @@ -115,6 +123,19 @@ void cgit_print_pageheader(char *title, int show_search) { - html("<table id='layout'><tr><td id='header'>"); - htmlf("<a href='%s'>", cgit_logo_link); - htmlf("<img id='logo' src='%s'/>\n", cgit_logo); - htmlf("</a>"); + html("<table id='layout'>"); + html("<tr><td id='header'>"); + html(cgit_root_title); + html("</td><td id='logo'>"); + html("<a href='"); + html_attr(cgit_logo_link); + htmlf("'><img src='%s'/></a>", cgit_logo); + html("</td></tr>"); + html("<tr><td id='crumb'>"); + htmlf("<a href='%s'>root</a>", cgit_rooturl()); + if (cgit_query_repo) { + htmlf(" : <a href='%s'>", cgit_repourl(cgit_repo->url)); + html_txt(cgit_repo->name); + htmlf("</a> : %s", title); + } + html("</td>"); + html("<td id='search'>"); if (show_search) { @@ -139,8 +160,4 @@ void cgit_print_pageheader(char *title, int show_search) } - if (cgit_query_repo) - htmlf("<a href='%s'>", cgit_repourl(cgit_query_repo)); - html_txt(title); - if (cgit_query_repo) - html("</a>"); - html("</td></tr><tr><td id='content'>"); + html("</td></tr>"); + html("<tr><td id='content' colspan='2'>"); } |