]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-shared.c
Makefile: install cgit.{css,png} in CGIT_DATA_PATH
[ps-cgit] / ui-shared.c
index a959224251e7830cce9c329904ba776735e75c5d..76cd00d3b146a8a1401f7e3be7b6fcaacc48dab3 100644 (file)
@@ -262,6 +262,12 @@ void cgit_summary_link(char *name, char *title, char *class, char *head)
        reporevlink(NULL, name, title, class, head, NULL, NULL);
 }
 
+void cgit_tag_link(char *name, char *title, char *class, char *head,
+                  char *rev)
+{
+       reporevlink("tag", name, title, class, head, rev, NULL);
+}
+
 void cgit_tree_link(char *name, char *title, char *class, char *head,
                    char *rev, char *path)
 {
@@ -571,15 +577,20 @@ void add_hidden_formfields(int incl_head, int incl_search, char *page)
        }
 }
 
+const char *fallback_cmd = "repolist";
+
 char *hc(struct cgit_cmd *cmd, const char *page)
 {
-       return (strcmp(cmd->name, page) ? NULL : "active");
+       return (strcmp(cmd ? cmd->name : fallback_cmd, page) ? NULL : "active");
 }
 
 void cgit_print_pageheader(struct cgit_context *ctx)
 {
        struct cgit_cmd *cmd = cgit_get_cmd(ctx);
 
+       if (!cmd && ctx->repo)
+               fallback_cmd = "summary";
+
        html("<table id='header'>\n");
        html("<tr>\n");
        html("<td class='logo' rowspan='2'><a href='");
@@ -623,7 +634,8 @@ void cgit_print_pageheader(struct cgit_context *ctx)
 
        html("<table class='tabs'><tr><td>\n");
        if (ctx->repo) {
-               cgit_summary_link("summary", NULL, NULL, ctx->qry.head);
+               cgit_summary_link("summary", NULL, hc(cmd, "summary"),
+                                 ctx->qry.head);
                cgit_refs_link("refs", NULL, hc(cmd, "refs"), ctx->qry.head,
                               ctx->qry.sha1, NULL);
                cgit_log_link("log", NULL, hc(cmd, "log"), ctx->qry.head,