- title = fmt("%s - %s", cgit_repo->name, cgit_repo->desc);
- show_search = 0;
- setenv("GIT_DIR", cgit_repo->path, 1);
- 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_summary();
- } else if (!strcmp(cgit_query_page, "log")) {
- cgit_print_log(cgit_query_head, cgit_query_ofs, 100, cgit_query_search);
- } else if (!strcmp(cgit_query_page, "tree")) {
- cgit_print_tree(cgit_query_sha1, cgit_query_path);
- } else if (!strcmp(cgit_query_page, "commit")) {
- cgit_print_commit(cgit_query_sha1);
- } else if (!strcmp(cgit_query_page, "view")) {
- cgit_print_view(cgit_query_sha1);
- } else if (!strcmp(cgit_query_page, "diff")) {
- cgit_print_diff(cgit_query_sha1, cgit_query_sha2);
+ if (cmd->want_repo && prepare_repo_cmd(ctx))
+ return;
+
+ if (cmd->want_layout) {
+ cgit_print_http_headers(ctx);
+ cgit_print_docstart(ctx);
+ cgit_print_pageheader(ctx);