diff options
-rw-r--r-- | cgit.c | 3 | ||||
-rw-r--r-- | cgit.h | 1 | ||||
-rw-r--r-- | cgitrc.5.txt | 10 | ||||
-rw-r--r-- | ui-repolist.c | 2 |
4 files changed, 13 insertions, 3 deletions
@@ -233,6 +233,8 @@ void config_cb(const char *name, const char *value) | |||
233 | ctx.cfg.section_from_path = atoi(value); | 233 | ctx.cfg.section_from_path = atoi(value); |
234 | else if (!strcmp(name, "repository-sort")) | 234 | else if (!strcmp(name, "repository-sort")) |
235 | ctx.cfg.repository_sort = xstrdup(value); | 235 | ctx.cfg.repository_sort = xstrdup(value); |
236 | else if (!strcmp(name, "section-sort")) | ||
237 | ctx.cfg.section_sort = atoi(value); | ||
236 | else if (!strcmp(name, "source-filter")) | 238 | else if (!strcmp(name, "source-filter")) |
237 | ctx.cfg.source_filter = new_filter(value, SOURCE); | 239 | ctx.cfg.source_filter = new_filter(value, SOURCE); |
238 | else if (!strcmp(name, "summary-log")) | 240 | else if (!strcmp(name, "summary-log")) |
@@ -361,6 +363,7 @@ static void prepare_context(struct cgit_context *ctx) | |||
361 | ctx->cfg.script_name = CGIT_SCRIPT_NAME; | 363 | ctx->cfg.script_name = CGIT_SCRIPT_NAME; |
362 | ctx->cfg.section = ""; | 364 | ctx->cfg.section = ""; |
363 | ctx->cfg.repository_sort = "name"; | 365 | ctx->cfg.repository_sort = "name"; |
366 | ctx->cfg.section_sort = 1; | ||
364 | ctx->cfg.summary_branches = 10; | 367 | ctx->cfg.summary_branches = 10; |
365 | ctx->cfg.summary_log = 10; | 368 | ctx->cfg.summary_log = 10; |
366 | ctx->cfg.summary_tags = 10; | 369 | ctx->cfg.summary_tags = 10; |
@@ -226,6 +226,7 @@ struct cgit_config { | |||
226 | int scan_hidden_path; | 226 | int scan_hidden_path; |
227 | int section_from_path; | 227 | int section_from_path; |
228 | int snapshots; | 228 | int snapshots; |
229 | int section_sort; | ||
229 | int summary_branches; | 230 | int summary_branches; |
230 | int summary_log; | 231 | int summary_log; |
231 | int summary_tags; | 232 | int summary_tags; |
diff --git a/cgitrc.5.txt b/cgitrc.5.txt index 278de90..78bb9fc 100644 --- a/cgitrc.5.txt +++ b/cgitrc.5.txt | |||
@@ -72,7 +72,7 @@ cache-static-ttl:: | |||
72 | 72 | ||
73 | case-sensitive-sort:: | 73 | case-sensitive-sort:: |
74 | Sort items in the repo list case sensitively. Default value: "1". | 74 | Sort items in the repo list case sensitively. Default value: "1". |
75 | See also: repository-sort. | 75 | See also: repository-sort, section-sort. |
76 | 76 | ||
77 | clone-prefix:: | 77 | clone-prefix:: |
78 | Space-separated list of common prefixes which, when combined with a | 78 | Space-separated list of common prefixes which, when combined with a |
@@ -332,7 +332,13 @@ repository-sort:: | |||
332 | The way in which repositories in each section are sorted. Valid values | 332 | The way in which repositories in each section are sorted. Valid values |
333 | are "name" for sorting by the repo name or "age" for sorting by the | 333 | are "name" for sorting by the repo name or "age" for sorting by the |
334 | most recently updated repository. Default value: "name". See also: | 334 | most recently updated repository. Default value: "name". See also: |
335 | section, case-sensitive-sort. | 335 | section, case-sensitive-sort, section-sort. |
336 | |||
337 | section-sort:: | ||
338 | Flag which, when set to "1", will sort the sections on the repository | ||
339 | listing by name. Set this flag to "0" if the order in the cgitrc file should | ||
340 | be preserved. Default value: "1". See also: section, | ||
341 | case-sensitive-sort, repository-sort. | ||
336 | 342 | ||
337 | section-from-path:: | 343 | section-from-path:: |
338 | A number which, if specified before scan-path, specifies how many | 344 | A number which, if specified before scan-path, specifies how many |
diff --git a/ui-repolist.c b/ui-repolist.c index 36c067a..dead1bf 100644 --- a/ui-repolist.c +++ b/ui-repolist.c | |||
@@ -257,7 +257,7 @@ void cgit_print_repolist() | |||
257 | 257 | ||
258 | if(ctx.qry.sort) | 258 | if(ctx.qry.sort) |
259 | sorted = sort_repolist(ctx.qry.sort); | 259 | sorted = sort_repolist(ctx.qry.sort); |
260 | else | 260 | else if (ctx.cfg.section_sort) |
261 | sort_repolist("section"); | 261 | sort_repolist("section"); |
262 | 262 | ||
263 | html("<table summary='repository list' class='list nowrap'>"); | 263 | html("<table summary='repository list' class='list nowrap'>"); |