all repos — cgit @ 51140311bb3b0d4d0e859d5045ffe4c74478f5fe

a hyperfast web frontend for git written in c

Add search parameters to cgit_log_link

This makes the [prev] and [next] links work correctly on search results.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Lars Hjemli hjemli@gmail.com
Sat, 03 Nov 2007 10:42:37 +0100
commit

51140311bb3b0d4d0e859d5045ffe4c74478f5fe

parent

df203a293e3ac19245f8761cf7c5808f8735f917

6 files changed, 21 insertions(+), 8 deletions(-)

jump to
M cgit.hcgit.h

@@ -238,7 +238,8 @@

extern void cgit_tree_link(char *name, char *title, char *class, char *head, char *rev, char *path); extern void cgit_log_link(char *name, char *title, char *class, char *head, - char *rev, char *path, int ofs); + char *rev, char *path, int ofs, char *grep, + char *pattern); extern void cgit_commit_link(char *name, char *title, char *class, char *head, char *rev); extern void cgit_refs_link(char *name, char *title, char *class, char *head,
M ui-log.cui-log.c

@@ -118,13 +118,15 @@ html("<div class='pager'>");

if (ofs > 0) { cgit_log_link("[prev]", NULL, NULL, cgit_query_head, cgit_query_sha1, cgit_query_path, - ofs - cnt); + ofs - cnt, cgit_query_grep, + cgit_query_search); html("&nbsp;"); } if ((commit = get_revision(&rev)) != NULL) { cgit_log_link("[next]", NULL, NULL, cgit_query_head, cgit_query_sha1, cgit_query_path, - ofs + cnt); + ofs + cnt, cgit_query_grep, + cgit_query_search); } html("</div>"); }
M ui-repolist.cui-repolist.c

@@ -98,7 +98,8 @@ html("<td>");

html_link_open(cgit_repourl(cgit_repo->url), NULL, "button"); html("summary</a>"); - cgit_log_link("log", NULL, "button", NULL, NULL, NULL, 0); + cgit_log_link("log", NULL, "button", NULL, NULL, NULL, + 0, NULL, NULL); cgit_tree_link("tree", NULL, "button", NULL, NULL, NULL); html("</td>"); }
M ui-shared.cui-shared.c

@@ -194,7 +194,7 @@ reporevlink("tree", name, title, class, head, rev, path);

} void cgit_log_link(char *name, char *title, char *class, char *head, - char *rev, char *path, int ofs) + char *rev, char *path, int ofs, char *grep, char *pattern) { char *delim;

@@ -204,6 +204,15 @@ html(delim);

html("id="); html_attr(rev); delim = "&"; + } + if (grep && pattern) { + html(delim); + html("qt="); + html_attr(grep); + delim = "&"; + html(delim); + html("q="); + html_attr(pattern); } if (ofs > 0) { html(delim);

@@ -461,7 +470,7 @@ html("<p>\n<h1>navigate</h1>\n");

reporevlink(NULL, "summary", NULL, "menu", cgit_query_head, NULL, NULL); cgit_log_link("log", NULL, "menu", cgit_query_head, - cgit_query_sha1, cgit_query_path, 0); + cgit_query_sha1, cgit_query_path, 0, NULL, NULL); cgit_tree_link("tree", NULL, "menu", cgit_query_head, cgit_query_sha1, NULL); cgit_commit_link("commit", NULL, "menu", cgit_query_head,
M ui-summary.cui-summary.c

@@ -56,7 +56,7 @@

if (!info) return 1; html("<tr><td>"); - cgit_log_link(name, NULL, NULL, name, NULL, NULL, 0); + cgit_log_link(name, NULL, NULL, name, NULL, NULL, 0, NULL, NULL); html("</td><td>"); if (ref->object->type == OBJ_COMMIT) {
M ui-tree.cui-tree.c

@@ -100,7 +100,7 @@ htmlf("</td><td class='ls-size'>%li</td>", size);

html("<td>"); cgit_log_link("log", NULL, "button", cgit_query_head, curr_rev, - fullpath, 0); + fullpath, 0, NULL, NULL); html("</td></tr>\n"); free(name); return 0;