author | Stefan Naewe <stefan.naewe@atlas-elektronik.com> | 2008-08-01 12:54:38 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2008-08-01 20:09:13 (UTC) |
commit | 0f0ab148c6d444316af10e6b4c7a60630fed45d3 (patch) (unidiff) | |
tree | a52c08e648c5d656866cecf78e757f2f85211b19 /cgit.c | |
parent | a1266edfe6ec1fd678c8f6b60ffbd21d88ff5a93 (diff) | |
download | cgit-0f0ab148c6d444316af10e6b4c7a60630fed45d3.zip cgit-0f0ab148c6d444316af10e6b4c7a60630fed45d3.tar.gz cgit-0f0ab148c6d444316af10e6b4c7a60630fed45d3.tar.bz2 |
Added `local-time` option to cgitrc
When `local-time` is set, commit, tag and patch timestamps will be printed
in the servers timezone. Also, regardless of the value of `local-time`,
these timestamps will now always show the timezone.
Signed-off-by: Stefan Naewe <stefan.naewe@atlas-elektronik.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -66,48 +66,50 @@ void config_cb(const char *name, const char *value) | |||
66 | else if (!strcmp(name, "cache-dynamic-ttl")) | 66 | else if (!strcmp(name, "cache-dynamic-ttl")) |
67 | ctx.cfg.cache_dynamic_ttl = atoi(value); | 67 | ctx.cfg.cache_dynamic_ttl = atoi(value); |
68 | else if (!strcmp(name, "max-message-length")) | 68 | else if (!strcmp(name, "max-message-length")) |
69 | ctx.cfg.max_msg_len = atoi(value); | 69 | ctx.cfg.max_msg_len = atoi(value); |
70 | else if (!strcmp(name, "max-repodesc-length")) | 70 | else if (!strcmp(name, "max-repodesc-length")) |
71 | ctx.cfg.max_repodesc_len = atoi(value); | 71 | ctx.cfg.max_repodesc_len = atoi(value); |
72 | else if (!strcmp(name, "max-repo-count")) | 72 | else if (!strcmp(name, "max-repo-count")) |
73 | ctx.cfg.max_repo_count = atoi(value); | 73 | ctx.cfg.max_repo_count = atoi(value); |
74 | else if (!strcmp(name, "max-commit-count")) | 74 | else if (!strcmp(name, "max-commit-count")) |
75 | ctx.cfg.max_commit_count = atoi(value); | 75 | ctx.cfg.max_commit_count = atoi(value); |
76 | else if (!strcmp(name, "summary-log")) | 76 | else if (!strcmp(name, "summary-log")) |
77 | ctx.cfg.summary_log = atoi(value); | 77 | ctx.cfg.summary_log = atoi(value); |
78 | else if (!strcmp(name, "summary-branches")) | 78 | else if (!strcmp(name, "summary-branches")) |
79 | ctx.cfg.summary_branches = atoi(value); | 79 | ctx.cfg.summary_branches = atoi(value); |
80 | else if (!strcmp(name, "summary-tags")) | 80 | else if (!strcmp(name, "summary-tags")) |
81 | ctx.cfg.summary_tags = atoi(value); | 81 | ctx.cfg.summary_tags = atoi(value); |
82 | else if (!strcmp(name, "agefile")) | 82 | else if (!strcmp(name, "agefile")) |
83 | ctx.cfg.agefile = xstrdup(value); | 83 | ctx.cfg.agefile = xstrdup(value); |
84 | else if (!strcmp(name, "renamelimit")) | 84 | else if (!strcmp(name, "renamelimit")) |
85 | ctx.cfg.renamelimit = atoi(value); | 85 | ctx.cfg.renamelimit = atoi(value); |
86 | else if (!strcmp(name, "robots")) | 86 | else if (!strcmp(name, "robots")) |
87 | ctx.cfg.robots = xstrdup(value); | 87 | ctx.cfg.robots = xstrdup(value); |
88 | else if (!strcmp(name, "clone-prefix")) | 88 | else if (!strcmp(name, "clone-prefix")) |
89 | ctx.cfg.clone_prefix = xstrdup(value); | 89 | ctx.cfg.clone_prefix = xstrdup(value); |
90 | else if (!strcmp(name, "local-time")) | ||
91 | ctx.cfg.local_time = atoi(value); | ||
90 | else if (!strcmp(name, "repo.group")) | 92 | else if (!strcmp(name, "repo.group")) |
91 | ctx.cfg.repo_group = xstrdup(value); | 93 | ctx.cfg.repo_group = xstrdup(value); |
92 | else if (!strcmp(name, "repo.url")) | 94 | else if (!strcmp(name, "repo.url")) |
93 | ctx.repo = cgit_add_repo(value); | 95 | ctx.repo = cgit_add_repo(value); |
94 | else if (!strcmp(name, "repo.name")) | 96 | else if (!strcmp(name, "repo.name")) |
95 | ctx.repo->name = xstrdup(value); | 97 | ctx.repo->name = xstrdup(value); |
96 | else if (ctx.repo && !strcmp(name, "repo.path")) | 98 | else if (ctx.repo && !strcmp(name, "repo.path")) |
97 | ctx.repo->path = trim_end(value, '/'); | 99 | ctx.repo->path = trim_end(value, '/'); |
98 | else if (ctx.repo && !strcmp(name, "repo.clone-url")) | 100 | else if (ctx.repo && !strcmp(name, "repo.clone-url")) |
99 | ctx.repo->clone_url = xstrdup(value); | 101 | ctx.repo->clone_url = xstrdup(value); |
100 | else if (ctx.repo && !strcmp(name, "repo.desc")) | 102 | else if (ctx.repo && !strcmp(name, "repo.desc")) |
101 | ctx.repo->desc = xstrdup(value); | 103 | ctx.repo->desc = xstrdup(value); |
102 | else if (ctx.repo && !strcmp(name, "repo.owner")) | 104 | else if (ctx.repo && !strcmp(name, "repo.owner")) |
103 | ctx.repo->owner = xstrdup(value); | 105 | ctx.repo->owner = xstrdup(value); |
104 | else if (ctx.repo && !strcmp(name, "repo.defbranch")) | 106 | else if (ctx.repo && !strcmp(name, "repo.defbranch")) |
105 | ctx.repo->defbranch = xstrdup(value); | 107 | ctx.repo->defbranch = xstrdup(value); |
106 | else if (ctx.repo && !strcmp(name, "repo.snapshots")) | 108 | else if (ctx.repo && !strcmp(name, "repo.snapshots")) |
107 | ctx.repo->snapshots = ctx.cfg.snapshots & cgit_parse_snapshots_mask(value); /* XXX: &? */ | 109 | ctx.repo->snapshots = ctx.cfg.snapshots & cgit_parse_snapshots_mask(value); /* XXX: &? */ |
108 | else if (ctx.repo && !strcmp(name, "repo.enable-log-filecount")) | 110 | else if (ctx.repo && !strcmp(name, "repo.enable-log-filecount")) |
109 | ctx.repo->enable_log_filecount = ctx.cfg.enable_log_filecount * atoi(value); | 111 | ctx.repo->enable_log_filecount = ctx.cfg.enable_log_filecount * atoi(value); |
110 | else if (ctx.repo && !strcmp(name, "repo.enable-log-linecount")) | 112 | else if (ctx.repo && !strcmp(name, "repo.enable-log-linecount")) |
111 | ctx.repo->enable_log_linecount = ctx.cfg.enable_log_linecount * atoi(value); | 113 | ctx.repo->enable_log_linecount = ctx.cfg.enable_log_linecount * atoi(value); |
112 | else if (ctx.repo && !strcmp(name, "repo.module-link")) | 114 | else if (ctx.repo && !strcmp(name, "repo.module-link")) |
113 | ctx.repo->module_link= xstrdup(value); | 115 | ctx.repo->module_link= xstrdup(value); |
@@ -146,48 +148,49 @@ static void querystring_cb(const char *name, const char *value) | |||
146 | ctx.qry.ofs = atoi(value); | 148 | ctx.qry.ofs = atoi(value); |
147 | } else if (!strcmp(name, "path")) { | 149 | } else if (!strcmp(name, "path")) { |
148 | ctx.qry.path = trim_end(value, '/'); | 150 | ctx.qry.path = trim_end(value, '/'); |
149 | } else if (!strcmp(name, "name")) { | 151 | } else if (!strcmp(name, "name")) { |
150 | ctx.qry.name = xstrdup(value); | 152 | ctx.qry.name = xstrdup(value); |
151 | } else if (!strcmp(name, "mimetype")) { | 153 | } else if (!strcmp(name, "mimetype")) { |
152 | ctx.qry.mimetype = xstrdup(value); | 154 | ctx.qry.mimetype = xstrdup(value); |
153 | } | 155 | } |
154 | } | 156 | } |
155 | 157 | ||
156 | static void prepare_context(struct cgit_context *ctx) | 158 | static void prepare_context(struct cgit_context *ctx) |
157 | { | 159 | { |
158 | memset(ctx, 0, sizeof(ctx)); | 160 | memset(ctx, 0, sizeof(ctx)); |
159 | ctx->cfg.agefile = "info/web/last-modified"; | 161 | ctx->cfg.agefile = "info/web/last-modified"; |
160 | ctx->cfg.nocache = 0; | 162 | ctx->cfg.nocache = 0; |
161 | ctx->cfg.cache_size = 0; | 163 | ctx->cfg.cache_size = 0; |
162 | ctx->cfg.cache_dynamic_ttl = 5; | 164 | ctx->cfg.cache_dynamic_ttl = 5; |
163 | ctx->cfg.cache_max_create_time = 5; | 165 | ctx->cfg.cache_max_create_time = 5; |
164 | ctx->cfg.cache_repo_ttl = 5; | 166 | ctx->cfg.cache_repo_ttl = 5; |
165 | ctx->cfg.cache_root = CGIT_CACHE_ROOT; | 167 | ctx->cfg.cache_root = CGIT_CACHE_ROOT; |
166 | ctx->cfg.cache_root_ttl = 5; | 168 | ctx->cfg.cache_root_ttl = 5; |
167 | ctx->cfg.cache_static_ttl = -1; | 169 | ctx->cfg.cache_static_ttl = -1; |
168 | ctx->cfg.css = "/cgit.css"; | 170 | ctx->cfg.css = "/cgit.css"; |
169 | ctx->cfg.logo = "/git-logo.png"; | 171 | ctx->cfg.logo = "/git-logo.png"; |
172 | ctx->cfg.local_time = 0; | ||
170 | ctx->cfg.max_repo_count = 50; | 173 | ctx->cfg.max_repo_count = 50; |
171 | ctx->cfg.max_commit_count = 50; | 174 | ctx->cfg.max_commit_count = 50; |
172 | ctx->cfg.max_lock_attempts = 5; | 175 | ctx->cfg.max_lock_attempts = 5; |
173 | ctx->cfg.max_msg_len = 80; | 176 | ctx->cfg.max_msg_len = 80; |
174 | ctx->cfg.max_repodesc_len = 80; | 177 | ctx->cfg.max_repodesc_len = 80; |
175 | ctx->cfg.module_link = "./?repo=%s&page=commit&id=%s"; | 178 | ctx->cfg.module_link = "./?repo=%s&page=commit&id=%s"; |
176 | ctx->cfg.renamelimit = -1; | 179 | ctx->cfg.renamelimit = -1; |
177 | ctx->cfg.robots = "index, nofollow"; | 180 | ctx->cfg.robots = "index, nofollow"; |
178 | ctx->cfg.root_title = "Git repository browser"; | 181 | ctx->cfg.root_title = "Git repository browser"; |
179 | ctx->cfg.root_desc = "a fast webinterface for the git dscm"; | 182 | ctx->cfg.root_desc = "a fast webinterface for the git dscm"; |
180 | ctx->cfg.script_name = CGIT_SCRIPT_NAME; | 183 | ctx->cfg.script_name = CGIT_SCRIPT_NAME; |
181 | ctx->cfg.summary_branches = 10; | 184 | ctx->cfg.summary_branches = 10; |
182 | ctx->cfg.summary_log = 10; | 185 | ctx->cfg.summary_log = 10; |
183 | ctx->cfg.summary_tags = 10; | 186 | ctx->cfg.summary_tags = 10; |
184 | ctx->page.mimetype = "text/html"; | 187 | ctx->page.mimetype = "text/html"; |
185 | ctx->page.charset = PAGE_ENCODING; | 188 | ctx->page.charset = PAGE_ENCODING; |
186 | ctx->page.filename = NULL; | 189 | ctx->page.filename = NULL; |
187 | ctx->page.modified = time(NULL); | 190 | ctx->page.modified = time(NULL); |
188 | ctx->page.expires = ctx->page.modified; | 191 | ctx->page.expires = ctx->page.modified; |
189 | } | 192 | } |
190 | 193 | ||
191 | struct refmatch { | 194 | struct refmatch { |
192 | char *req_ref; | 195 | char *req_ref; |
193 | char *first_ref; | 196 | char *first_ref; |