diff options
Diffstat (limited to '')
-rw-r--r-- | ui-repolist.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/ui-repolist.c b/ui-repolist.c index 8e367a2..33e3e7f 100644 --- a/ui-repolist.c +++ b/ui-repolist.c @@ -12,6 +12,7 @@ void cgit_print_repolist(struct cacheitem *item) { struct repoinfo *repo; int i; + char *last_group = NULL; cgit_print_docstart(cgit_root_title, item); cgit_print_pageheader(cgit_root_title, 0); @@ -30,6 +31,15 @@ void cgit_print_repolist(struct cacheitem *item) for (i=0; i<cgit_repolist.count; i++) { repo = &cgit_repolist.repos[i]; + if ((last_group == NULL && repo->group != NULL) || + (last_group != NULL && repo->group == NULL) || + (last_group != NULL && repo->group!= NULL && + strcmp(repo->group, last_group))) { + html("<tr class='nohover'><td colspan='4' class='repogroup'>"); + html_txt(repo->group); + html("</td></tr>"); + last_group = repo->group; + } html("<tr><td>"); html_link_open(cgit_repourl(repo->url), NULL, NULL); html_txt(repo->name); |