summaryrefslogtreecommitdiffabout
path: root/ui-shared.c
authorLars Hjemli <hjemli@gmail.com>2007-06-17 22:18:42 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2007-06-18 06:29:53 (UTC)
commitb8be028a309381b83abe924f5e8e01cf02b121a2 (patch) (unidiff)
tree669b8ac253e8cc1d8568723167764f5428ae5d83 /ui-shared.c
parent4a0be586662843382ecfa53af34a13b291312bc0 (diff)
downloadcgit-b8be028a309381b83abe924f5e8e01cf02b121a2.zip
cgit-b8be028a309381b83abe924f5e8e01cf02b121a2.tar.gz
cgit-b8be028a309381b83abe924f5e8e01cf02b121a2.tar.bz2
Add more menuitems on repo pages
In an attempt to get better usability, a set of 'semistatic' menuitems are added to the page header on all pages except the repository index. The menuitems (summary, log, files, commit and diff) honours the current branch and revision. To switch the current branch one can use the branch links on the summary page. The backlink to the repository index page is now available by clicking the static page heading. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-shared.c') (more/less context) (show whitespace changes)
-rw-r--r--ui-shared.c35
1 files changed, 29 insertions, 6 deletions
diff --git a/ui-shared.c b/ui-shared.c
index 15d8254..383b8ac 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -113,2 +113,3 @@ static char *repolink(char *title, char *class, char *page, char *head,
113 html("/"); 113 html("/");
114 if (page) {
114 html(page); 115 html(page);
@@ -117,2 +118,3 @@ static char *repolink(char *title, char *class, char *page, char *head,
117 html_attr(path); 118 html_attr(path);
119 }
118 } else { 120 } else {
@@ -123,2 +125,3 @@ static char *repolink(char *title, char *class, char *page, char *head,
123 html("/"); 125 html("/");
126 if (page) {
124 html(page); 127 html(page);
@@ -127,2 +130,3 @@ static char *repolink(char *title, char *class, char *page, char *head,
127 html_attr(path); 130 html_attr(path);
131 }
128 delim = "&amp;"; 132 delim = "&amp;";
@@ -281,5 +285,7 @@ void cgit_print_pageheader(char *title, int show_search)
281 html("<table id='layout'>"); 285 html("<table id='layout'>");
282 html("<tr><td id='header'>"); 286 html("<tr><td id='header'><a href='");
283 html(cgit_root_title); 287 html_attr(cgit_rooturl());
284 html("</td><td id='logo'>"); 288 html("'>");
289 html_txt(cgit_root_title);
290 html("</a></td><td id='logo'>");
285 html("<a href='"); 291 html("<a href='");
@@ -289,7 +295,24 @@ void cgit_print_pageheader(char *title, int show_search)
289 html("<tr><td id='crumb'>"); 295 html("<tr><td id='crumb'>");
290 htmlf("<a href='%s'>root</a>", cgit_rooturl());
291 if (cgit_query_repo) { 296 if (cgit_query_repo) {
292 htmlf(" : <a href='%s'>", cgit_repourl(cgit_repo->url));
293 html_txt(cgit_repo->name); 297 html_txt(cgit_repo->name);
294 htmlf("</a> : %s", title); 298 html(" (");
299 html_txt(cgit_query_head);
300 html(") : &nbsp;");
301 reporevlink(NULL, "summary", NULL, NULL, cgit_query_head,
302 NULL, NULL);
303 html(" ");
304 cgit_log_link("log", NULL, NULL, cgit_query_head,
305 cgit_query_sha1, cgit_query_path);
306 html(" ");
307 cgit_tree_link("files", NULL, NULL, cgit_query_head,
308 cgit_query_sha1, cgit_query_path);
309 html(" ");
310 cgit_commit_link("commit", NULL, NULL, cgit_query_head,
311 cgit_query_sha1);
312 html(" ");
313 cgit_diff_link("diff", NULL, NULL, cgit_query_head,
314 cgit_query_sha1, cgit_query_sha2,
315 cgit_query_path);
316 } else {
317 html_txt("Index of repositories");
295 } 318 }