Move cgit_repo into cgit_context

This removes the global variable which is used to keep track of the
currently selected repository, and adds a new variable in the cgit_context
structure.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
This commit is contained in:
Lars Hjemli
2008-02-16 13:56:09 +01:00
parent b228d4ff82
commit d1f3bbe9d2
11 changed files with 101 additions and 103 deletions

View File

@ -25,7 +25,7 @@ time_t read_agefile(char *path)
return 0;
}
static void print_modtime(struct repoinfo *repo)
static void print_modtime(struct cgit_repo *repo)
{
char *path;
struct stat s;
@ -70,32 +70,32 @@ void cgit_print_repolist(struct cacheitem *item)
html("</tr>\n");
for (i=0; i<cgit_repolist.count; i++) {
cgit_repo = &cgit_repolist.repos[i];
if ((last_group == NULL && cgit_repo->group != NULL) ||
(last_group != NULL && cgit_repo->group == NULL) ||
(last_group != NULL && cgit_repo->group != NULL &&
strcmp(cgit_repo->group, last_group))) {
ctx.repo = &cgit_repolist.repos[i];
if ((last_group == NULL && ctx.repo->group != NULL) ||
(last_group != NULL && ctx.repo->group == NULL) ||
(last_group != NULL && ctx.repo->group != NULL &&
strcmp(ctx.repo->group, last_group))) {
htmlf("<tr class='nohover'><td colspan='%d' class='repogroup'>",
columns);
html_txt(cgit_repo->group);
html_txt(ctx.repo->group);
html("</td></tr>");
last_group = cgit_repo->group;
last_group = ctx.repo->group;
}
htmlf("<tr><td class='%s'>",
cgit_repo->group ? "sublevel-repo" : "toplevel-repo");
html_link_open(cgit_repourl(cgit_repo->url), NULL, NULL);
html_txt(cgit_repo->name);
ctx.repo->group ? "sublevel-repo" : "toplevel-repo");
html_link_open(cgit_repourl(ctx.repo->url), NULL, NULL);
html_txt(ctx.repo->name);
html_link_close();
html("</td><td>");
html_ntxt(ctx.cfg.max_repodesc_len, cgit_repo->desc);
html_ntxt(ctx.cfg.max_repodesc_len, ctx.repo->desc);
html("</td><td>");
html_txt(cgit_repo->owner);
html_txt(ctx.repo->owner);
html("</td><td>");
print_modtime(cgit_repo);
print_modtime(ctx.repo);
html("</td>");
if (ctx.cfg.enable_index_links) {
html("<td>");
html_link_open(cgit_repourl(cgit_repo->url),
html_link_open(cgit_repourl(ctx.repo->url),
NULL, "button");
html("summary</a>");
cgit_log_link("log", NULL, "button", NULL, NULL, NULL,