author | Lars Hjemli <hjemli@gmail.com> | 2008-05-03 08:54:39 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2008-05-03 08:54:39 (UTC) |
commit | c6078b8b006bcb0671a3c1bc21dd1a2c01035a2e (patch) (unidiff) | |
tree | 0ca48d3ac455a7aecd30590ed71703ba5b34c4f1 /cgit.c | |
parent | 141f1c3eb657470e81bbf998f44f9723f9009def (diff) | |
download | cgit-c6078b8b006bcb0671a3c1bc21dd1a2c01035a2e.zip cgit-c6078b8b006bcb0671a3c1bc21dd1a2c01035a2e.tar.gz cgit-c6078b8b006bcb0671a3c1bc21dd1a2c01035a2e.tar.bz2 |
Add a pager on the repolist
This enables a pager on the repolist which restricts the number of entries
displayed per page, controlled by the new option `max-repo-count` (default
value 50).
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -52,32 +52,34 @@ void config_cb(const char *name, const char *value) | |||
52 | else if (!strcmp(name, "cache-size")) | 52 | else if (!strcmp(name, "cache-size")) |
53 | ctx.cfg.cache_size = atoi(value); | 53 | ctx.cfg.cache_size = atoi(value); |
54 | else if (!strcmp(name, "cache-root")) | 54 | else if (!strcmp(name, "cache-root")) |
55 | ctx.cfg.cache_root = xstrdup(value); | 55 | ctx.cfg.cache_root = xstrdup(value); |
56 | else if (!strcmp(name, "cache-root-ttl")) | 56 | else if (!strcmp(name, "cache-root-ttl")) |
57 | ctx.cfg.cache_root_ttl = atoi(value); | 57 | ctx.cfg.cache_root_ttl = atoi(value); |
58 | else if (!strcmp(name, "cache-repo-ttl")) | 58 | else if (!strcmp(name, "cache-repo-ttl")) |
59 | ctx.cfg.cache_repo_ttl = atoi(value); | 59 | ctx.cfg.cache_repo_ttl = atoi(value); |
60 | else if (!strcmp(name, "cache-static-ttl")) | 60 | else if (!strcmp(name, "cache-static-ttl")) |
61 | ctx.cfg.cache_static_ttl = atoi(value); | 61 | ctx.cfg.cache_static_ttl = atoi(value); |
62 | else if (!strcmp(name, "cache-dynamic-ttl")) | 62 | else if (!strcmp(name, "cache-dynamic-ttl")) |
63 | ctx.cfg.cache_dynamic_ttl = atoi(value); | 63 | ctx.cfg.cache_dynamic_ttl = atoi(value); |
64 | else if (!strcmp(name, "max-message-length")) | 64 | else if (!strcmp(name, "max-message-length")) |
65 | ctx.cfg.max_msg_len = atoi(value); | 65 | ctx.cfg.max_msg_len = atoi(value); |
66 | else if (!strcmp(name, "max-repodesc-length")) | 66 | else if (!strcmp(name, "max-repodesc-length")) |
67 | ctx.cfg.max_repodesc_len = atoi(value); | 67 | ctx.cfg.max_repodesc_len = atoi(value); |
68 | else if (!strcmp(name, "max-repo-count")) | ||
69 | ctx.cfg.max_repo_count = atoi(value); | ||
68 | else if (!strcmp(name, "max-commit-count")) | 70 | else if (!strcmp(name, "max-commit-count")) |
69 | ctx.cfg.max_commit_count = atoi(value); | 71 | ctx.cfg.max_commit_count = atoi(value); |
70 | else if (!strcmp(name, "summary-log")) | 72 | else if (!strcmp(name, "summary-log")) |
71 | ctx.cfg.summary_log = atoi(value); | 73 | ctx.cfg.summary_log = atoi(value); |
72 | else if (!strcmp(name, "summary-branches")) | 74 | else if (!strcmp(name, "summary-branches")) |
73 | ctx.cfg.summary_branches = atoi(value); | 75 | ctx.cfg.summary_branches = atoi(value); |
74 | else if (!strcmp(name, "summary-tags")) | 76 | else if (!strcmp(name, "summary-tags")) |
75 | ctx.cfg.summary_tags = atoi(value); | 77 | ctx.cfg.summary_tags = atoi(value); |
76 | else if (!strcmp(name, "agefile")) | 78 | else if (!strcmp(name, "agefile")) |
77 | ctx.cfg.agefile = xstrdup(value); | 79 | ctx.cfg.agefile = xstrdup(value); |
78 | else if (!strcmp(name, "renamelimit")) | 80 | else if (!strcmp(name, "renamelimit")) |
79 | ctx.cfg.renamelimit = atoi(value); | 81 | ctx.cfg.renamelimit = atoi(value); |
80 | else if (!strcmp(name, "robots")) | 82 | else if (!strcmp(name, "robots")) |
81 | ctx.cfg.robots = xstrdup(value); | 83 | ctx.cfg.robots = xstrdup(value); |
82 | else if (!strcmp(name, "clone-prefix")) | 84 | else if (!strcmp(name, "clone-prefix")) |
83 | ctx.cfg.clone_prefix = xstrdup(value); | 85 | ctx.cfg.clone_prefix = xstrdup(value); |
@@ -146,32 +148,33 @@ static void querystring_cb(const char *name, const char *value) | |||
146 | } | 148 | } |
147 | 149 | ||
148 | static void prepare_context(struct cgit_context *ctx) | 150 | static void prepare_context(struct cgit_context *ctx) |
149 | { | 151 | { |
150 | memset(ctx, 0, sizeof(ctx)); | 152 | memset(ctx, 0, sizeof(ctx)); |
151 | ctx->cfg.agefile = "info/web/last-modified"; | 153 | ctx->cfg.agefile = "info/web/last-modified"; |
152 | ctx->cfg.nocache = 0; | 154 | ctx->cfg.nocache = 0; |
153 | ctx->cfg.cache_size = 0; | 155 | ctx->cfg.cache_size = 0; |
154 | ctx->cfg.cache_dynamic_ttl = 5; | 156 | ctx->cfg.cache_dynamic_ttl = 5; |
155 | ctx->cfg.cache_max_create_time = 5; | 157 | ctx->cfg.cache_max_create_time = 5; |
156 | ctx->cfg.cache_repo_ttl = 5; | 158 | ctx->cfg.cache_repo_ttl = 5; |
157 | ctx->cfg.cache_root = CGIT_CACHE_ROOT; | 159 | ctx->cfg.cache_root = CGIT_CACHE_ROOT; |
158 | ctx->cfg.cache_root_ttl = 5; | 160 | ctx->cfg.cache_root_ttl = 5; |
159 | ctx->cfg.cache_static_ttl = -1; | 161 | ctx->cfg.cache_static_ttl = -1; |
160 | ctx->cfg.css = "/cgit.css"; | 162 | ctx->cfg.css = "/cgit.css"; |
161 | ctx->cfg.logo = "/git-logo.png"; | 163 | ctx->cfg.logo = "/git-logo.png"; |
164 | ctx->cfg.max_repo_count = 50; | ||
162 | ctx->cfg.max_commit_count = 50; | 165 | ctx->cfg.max_commit_count = 50; |
163 | ctx->cfg.max_lock_attempts = 5; | 166 | ctx->cfg.max_lock_attempts = 5; |
164 | ctx->cfg.max_msg_len = 60; | 167 | ctx->cfg.max_msg_len = 60; |
165 | ctx->cfg.max_repodesc_len = 60; | 168 | ctx->cfg.max_repodesc_len = 60; |
166 | ctx->cfg.module_link = "./?repo=%s&page=commit&id=%s"; | 169 | ctx->cfg.module_link = "./?repo=%s&page=commit&id=%s"; |
167 | ctx->cfg.renamelimit = -1; | 170 | ctx->cfg.renamelimit = -1; |
168 | ctx->cfg.robots = "index, nofollow"; | 171 | ctx->cfg.robots = "index, nofollow"; |
169 | ctx->cfg.root_title = "Git repository browser"; | 172 | ctx->cfg.root_title = "Git repository browser"; |
170 | ctx->cfg.root_desc = "a fast webinterface for the git dscm"; | 173 | ctx->cfg.root_desc = "a fast webinterface for the git dscm"; |
171 | ctx->cfg.script_name = CGIT_SCRIPT_NAME; | 174 | ctx->cfg.script_name = CGIT_SCRIPT_NAME; |
172 | ctx->page.mimetype = "text/html"; | 175 | ctx->page.mimetype = "text/html"; |
173 | ctx->page.charset = PAGE_ENCODING; | 176 | ctx->page.charset = PAGE_ENCODING; |
174 | ctx->page.filename = NULL; | 177 | ctx->page.filename = NULL; |
175 | ctx->page.modified = time(NULL); | 178 | ctx->page.modified = time(NULL); |
176 | ctx->page.expires = ctx->page.modified; | 179 | ctx->page.expires = ctx->page.modified; |
177 | } | 180 | } |