]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-repolist.c
ui-shared: keep filter repolist page in pagination
[ps-cgit] / ui-repolist.c
index f929cb79ec05ded2e92deb90e50743dde88d6681..4b16b6e34225ca383c53503ed7b153becea01861 100644 (file)
@@ -108,7 +108,7 @@ static int is_in_url(struct cgit_repo *repo)
 static void print_sort_header(const char *title, const char *sort)
 {
        html("<th class='left'><a href='");
-       html_attr(cgit_rooturl());
+       html_attr(ctx.qry.url);
        htmlf("?s=%s", sort);
        if (ctx.qry.search) {
                html("&amp;q=");
@@ -275,6 +275,8 @@ void cgit_print_repolist()
        html("<table summary='repository list' class='list nowrap'>");
        for (i = 0; i < cgit_repolist.count; i++) {
                ctx.repo = &cgit_repolist.repos[i];
+               if (ctx.repo->hide || ctx.repo->ignore)
+                       continue;
                if (!(is_match(ctx.repo) && is_in_url(ctx.repo)))
                        continue;
                hits++;
@@ -313,8 +315,8 @@ void cgit_print_repolist()
                                cgit_close_filter(ctx.repo->owner_filter);
                        } else {
                                html("<a href='");
-                               html_attr(cgit_rooturl());
-                               html("?=");
+                               html_attr(ctx.qry.url);
+                               html("?q=");
                                html_url_arg(ctx.repo->owner);
                                html("'>");
                                html_txt(ctx.repo->owner);