-rw-r--r-- | cgit.c | 13 | ||||
-rw-r--r-- | cgit.css | 98 | ||||
-rw-r--r-- | ui-diff.c | 1 | ||||
-rw-r--r-- | ui-log.c | 1 | ||||
-rw-r--r-- | ui-repolist.c | 1 | ||||
-rw-r--r-- | ui-shared.c | 37 | ||||
-rw-r--r-- | ui-summary.c | 6 | ||||
-rw-r--r-- | ui-tree.c | 1 | ||||
-rw-r--r-- | ui-view.c | 1 |
9 files changed, 127 insertions, 32 deletions
@@ -89,9 +89,18 @@ static void cgit_print_repo_page(struct cacheitem *item) if (cgit_query_page && !strcmp(cgit_query_page, "log")) show_search = 1; + cgit_print_docstart(title, item); - cgit_print_pageheader(title, show_search); + + if (!cgit_query_page) { + cgit_print_pageheader("summary", show_search); cgit_print_summary(); - } else if (!strcmp(cgit_query_page, "log")) { + cgit_print_docend(); + return; + } + + cgit_print_pageheader(cgit_query_page, show_search); + + if (!strcmp(cgit_query_page, "log")) { cgit_print_log(cgit_query_head, cgit_query_ofs, 100, cgit_query_search); @@ -11,5 +11,11 @@ h2 { font-size: 120%; font-weight: bold; - margin-bottom: 0.5em; + margin-bottom: 0.25em; +} + +h3 { + margin-top: 0em; + font-size: 100%; + font-weight: normal; } @@ -27,13 +33,17 @@ table.list { border-collapse: collapse; } + table.list tr { background: white; } + table.list tr:hover { background: #eee; } + table.list tr.nohover:hover { background: white; } + table.list th { font-weight: normal; @@ -42,34 +52,78 @@ table.list th { vertical-align: baseline; } + table.list td { border: none; padding: 0.1em 0.5em 0.1em 0.5em; } + img { border: none; } + table#layout { width: 100%; - border-collapse: collapse; + border-collapse: separate; + border-spacing: 0px; margin: 0px; } -td#header { + +td#header, td#logo { + color: #666; background-color: #ddd; - padding: 0.25em 0.25em 0.25em 0.5em; + border-bottom: solid 1px #000; +} + +td#header { font-size: 150%; font-weight: bold; - border-bottom: solid 1px #aaa; + padding: 0.2em 0.5em; + vertical-align: text-bottom; +} + +td#logo { + text-align: right; vertical-align: middle; + padding-right: 0.5em; +} + +td#crumb, td#search { + color: #ccc; + border-top: solid 3px #555; + background-color: #666; + border-bottom: solid 1px #333; + padding: 2px 1em; +} + +td#crumb { + font-weight: bold; +} + +td#crumb a { + color: #ccc; } -td#header img#logo { - float: right; + +td#crumb a:hover { + color: #eee; } -td#header input { - float: right; - margin: 0.25em 1em; +td#search { + text-align: right; + vertical-align: center; + padding-right: 0.5em; } -td#header a { - color: black; + +td#search form { + margin: 0px; + padding: 0px; +} + +td#search input { + font-size: 9pt; + padding: 0px; + width: 10em; + border: solid 1px #333; + color: #333; + background-color: #fff; } @@ -87,16 +141,21 @@ div.error { margin: 1em 2em; } + div.ls-blob, div.ls-dir { font-family: monospace; } + div.ls-dir a { font-weight: bold; } + th.filesize, td.filesize { text-align: right; } + td.filesize { font-family: monospace; } + td.filemode { font-family: monospace; @@ -117,4 +176,5 @@ table.commit-info { margin-top: 1.5em; } + table.commit-info th { text-align: left; @@ -122,8 +182,10 @@ table.commit-info th { padding: 0.1em 1em 0.1em 0.1em; } + table.commit-info td { font-weight: normal; padding: 0.1em 1em 0.1em 0.1em; } + div.commit-subject { font-weight: bold; @@ -132,12 +194,15 @@ div.commit-subject { padding: 0em; } + div.commit-msg { white-space: pre; font-family: monospace; } + table.diffstat { border-collapse: collapse; margin-top: 1.5em; } + table.diffstat th { font-weight: normal; @@ -147,23 +212,28 @@ table.diffstat th { font-size: 100%; } + table.diffstat td { padding: 0.1em 1em 0.1em 0.1em; font-size: 100%; } + table.diffstat td span.modechange { padding-left: 1em; color: red; } + table.diffstat td.add a { color: green; } + table.diffstat td.del a { color: red; } + table.diffstat td.upd a { color: blue; } + table.diffstat td.summary { - /* border-top: solid 1px black; */ color: #888; padding-top: 0.5em; @@ -192,7 +262,9 @@ table.diff td div.del { font-size: 90%; } + .left { text-align: left; } + .right { text-align: right; @@ -125,5 +125,4 @@ void cgit_print_diff(const char *old_hex, const char *new_hex) get_sha1(new_hex, sha2); - html("<h2>diff</h2>\n"); html("<table class='diff'><tr><td>"); run_diff(sha1, sha2); @@ -55,5 +55,4 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep) prepare_revision_walk(&rev); - html("<h2>Log</h2>"); html("<table class='list nowrap'>"); html("<tr class='nohover'><th class='left'>Date</th>" diff --git a/ui-repolist.c b/ui-repolist.c index 011ec95..2ce0d6a 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -17,5 +17,4 @@ void cgit_print_repolist(struct cacheitem *item) cgit_print_pageheader(cgit_root_title, 0); - html("<h2>Repositories</h2>\n"); html("<table class='list nowrap'>"); html("<tr class='nohover'>" diff --git a/ui-shared.c b/ui-shared.c index 172499c..bca50aa 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -41,4 +41,12 @@ 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) { @@ -114,8 +122,21 @@ void cgit_print_docend() 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) { html("<form method='get' href='"); @@ -138,10 +159,6 @@ void cgit_print_pageheader(char *title, int show_search) html("'/></form>"); } - 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'>"); } diff --git a/ui-summary.c b/ui-summary.c index ff3ed4d..42f4300 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -130,6 +130,8 @@ void cgit_print_summary() { html("<h2>"); - html_txt("Repo summary page"); - html("</h2>"); + html(cgit_repo->name); + html("</h2><h3>"); + html(cgit_repo->desc); + html("</h3>"); html("<table class='list nowrap'>"); cgit_print_branches(); @@ -67,5 +67,4 @@ void cgit_print_tree(const char *hex, char *path) } - html("<h2>Tree content</h2>\n"); html_txt(path); html("<table class='list'>\n"); @@ -33,5 +33,4 @@ void cgit_print_view(const char *hex) buf[size] = '\0'; - html("<h2>Object content</h2>\n"); html("<table class='list'>\n"); htmlf("<tr class='nohover'><th class='left'>%s %s, %li bytes</th></tr>\n", type, hex, size); |