summaryrefslogtreecommitdiffabout
authorLars Hjemli <hjemli@gmail.com>2007-11-11 20:57:21 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2007-11-11 20:57:21 (UTC)
commitd267d88c9cb1fb4a45120b86e410ab604626c6bb (patch) (unidiff)
tree55ee3a76da83a6272e446f5201928fe1753ea30d
parent1b7c5b2e0b918e9452694aace7c19194683989a8 (diff)
downloadcgit-d267d88c9cb1fb4a45120b86e410ab604626c6bb.zip
cgit-d267d88c9cb1fb4a45120b86e410ab604626c6bb.tar.gz
cgit-d267d88c9cb1fb4a45120b86e410ab604626c6bb.tar.bz2
Add support for "robots" meta-tag
With this change, cgit will start to generate the "robots" meta-tag, using a default value of "index, nofollow". The default value can be modified with a new cgitrc variable, "robots". Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--cgit.h1
-rw-r--r--cgitrc5
-rw-r--r--shared.c3
-rw-r--r--ui-shared.c2
4 files changed, 11 insertions, 0 deletions
diff --git a/cgit.h b/cgit.h
index 6291c58..ab0efeb 100644
--- a/cgit.h
+++ b/cgit.h
@@ -130,24 +130,25 @@ extern int cgit_cmd;
130extern char *cgit_root_title; 130extern char *cgit_root_title;
131extern char *cgit_css; 131extern char *cgit_css;
132extern char *cgit_logo; 132extern char *cgit_logo;
133extern char *cgit_index_header; 133extern char *cgit_index_header;
134extern char *cgit_index_info; 134extern char *cgit_index_info;
135extern char *cgit_logo_link; 135extern char *cgit_logo_link;
136extern char *cgit_module_link; 136extern char *cgit_module_link;
137extern char *cgit_agefile; 137extern char *cgit_agefile;
138extern char *cgit_virtual_root; 138extern char *cgit_virtual_root;
139extern char *cgit_script_name; 139extern char *cgit_script_name;
140extern char *cgit_cache_root; 140extern char *cgit_cache_root;
141extern char *cgit_repo_group; 141extern char *cgit_repo_group;
142extern char *cgit_robots;
142 143
143extern int cgit_nocache; 144extern int cgit_nocache;
144extern int cgit_snapshots; 145extern int cgit_snapshots;
145extern int cgit_enable_index_links; 146extern int cgit_enable_index_links;
146extern int cgit_enable_log_filecount; 147extern int cgit_enable_log_filecount;
147extern int cgit_enable_log_linecount; 148extern int cgit_enable_log_linecount;
148extern int cgit_max_lock_attempts; 149extern int cgit_max_lock_attempts;
149extern int cgit_cache_root_ttl; 150extern int cgit_cache_root_ttl;
150extern int cgit_cache_repo_ttl; 151extern int cgit_cache_repo_ttl;
151extern int cgit_cache_dynamic_ttl; 152extern int cgit_cache_dynamic_ttl;
152extern int cgit_cache_static_ttl; 153extern int cgit_cache_static_ttl;
153extern int cgit_cache_max_create_time; 154extern int cgit_cache_max_create_time;
diff --git a/cgitrc b/cgitrc
index 6363c9c..8c616e0 100644
--- a/cgitrc
+++ b/cgitrc
@@ -1,22 +1,27 @@
1## 1##
2## cgitrc: template for /etc/cgitrc 2## cgitrc: template for /etc/cgitrc
3## 3##
4 4
5 5
6## Uncomment and set to 1 to deactivate caching of generated pages. Mostly 6## Uncomment and set to 1 to deactivate caching of generated pages. Mostly
7## usefull for testing. 7## usefull for testing.
8#nocache=0 8#nocache=0
9 9
10 10
11## This variable can be used to override the default value for "robots"
12## meta-tag. If unset, the meta-tag isn't generated.
13#robots=index, nofollow
14
15
11## Set allowed snapshot types by default. Can be overridden per repo 16## Set allowed snapshot types by default. Can be overridden per repo
12# can be any combination of zip/tar.gz/tar.bz2/tar 17# can be any combination of zip/tar.gz/tar.bz2/tar
13#snapshots=0 18#snapshots=0
14 19
15 20
16## Enable/disable extra links to summary/log/tree per repo on index page 21## Enable/disable extra links to summary/log/tree per repo on index page
17#enable-index-links=0 22#enable-index-links=0
18 23
19 24
20## Enable/disable display of 'number of files changed' in log view 25## Enable/disable display of 'number of files changed' in log view
21#enable-log-filecount=0 26#enable-log-filecount=0
22 27
diff --git a/shared.c b/shared.c
index 8cb4808..fd8b1e3 100644
--- a/shared.c
+++ b/shared.c
@@ -17,24 +17,25 @@ const char *cgit_version = CGIT_VERSION;
17char *cgit_root_title = "Git repository browser"; 17char *cgit_root_title = "Git repository browser";
18char *cgit_css = "/cgit.css"; 18char *cgit_css = "/cgit.css";
19char *cgit_logo = "/git-logo.png"; 19char *cgit_logo = "/git-logo.png";
20char *cgit_index_header = NULL; 20char *cgit_index_header = NULL;
21char *cgit_index_info = NULL; 21char *cgit_index_info = NULL;
22char *cgit_logo_link = "http://www.kernel.org/pub/software/scm/git/docs/"; 22char *cgit_logo_link = "http://www.kernel.org/pub/software/scm/git/docs/";
23char *cgit_module_link = "./?repo=%s&page=commit&id=%s"; 23char *cgit_module_link = "./?repo=%s&page=commit&id=%s";
24char *cgit_agefile = "info/web/last-modified"; 24char *cgit_agefile = "info/web/last-modified";
25char *cgit_virtual_root = NULL; 25char *cgit_virtual_root = NULL;
26char *cgit_script_name = CGIT_SCRIPT_NAME; 26char *cgit_script_name = CGIT_SCRIPT_NAME;
27char *cgit_cache_root = CGIT_CACHE_ROOT; 27char *cgit_cache_root = CGIT_CACHE_ROOT;
28char *cgit_repo_group = NULL; 28char *cgit_repo_group = NULL;
29char *cgit_robots = "index, nofollow";
29 30
30int cgit_nocache = 0; 31int cgit_nocache = 0;
31int cgit_snapshots = 0; 32int cgit_snapshots = 0;
32int cgit_enable_index_links = 0; 33int cgit_enable_index_links = 0;
33int cgit_enable_log_filecount = 0; 34int cgit_enable_log_filecount = 0;
34int cgit_enable_log_linecount = 0; 35int cgit_enable_log_linecount = 0;
35int cgit_max_lock_attempts = 5; 36int cgit_max_lock_attempts = 5;
36int cgit_cache_root_ttl = 5; 37int cgit_cache_root_ttl = 5;
37int cgit_cache_repo_ttl = 5; 38int cgit_cache_repo_ttl = 5;
38int cgit_cache_dynamic_ttl = 5; 39int cgit_cache_dynamic_ttl = 5;
39int cgit_cache_static_ttl = -1; 40int cgit_cache_static_ttl = -1;
40int cgit_cache_max_create_time = 5; 41int cgit_cache_max_create_time = 5;
@@ -188,24 +189,26 @@ void cgit_global_config_cb(const char *name, const char *value)
188 else if (!strcmp(name, "max-commit-count")) 189 else if (!strcmp(name, "max-commit-count"))
189 cgit_max_commit_count = atoi(value); 190 cgit_max_commit_count = atoi(value);
190 else if (!strcmp(name, "summary-log")) 191 else if (!strcmp(name, "summary-log"))
191 cgit_summary_log = atoi(value); 192 cgit_summary_log = atoi(value);
192 else if (!strcmp(name, "summary-branches")) 193 else if (!strcmp(name, "summary-branches"))
193 cgit_summary_branches = atoi(value); 194 cgit_summary_branches = atoi(value);
194 else if (!strcmp(name, "summary-tags")) 195 else if (!strcmp(name, "summary-tags"))
195 cgit_summary_tags = atoi(value); 196 cgit_summary_tags = atoi(value);
196 else if (!strcmp(name, "agefile")) 197 else if (!strcmp(name, "agefile"))
197 cgit_agefile = xstrdup(value); 198 cgit_agefile = xstrdup(value);
198 else if (!strcmp(name, "renamelimit")) 199 else if (!strcmp(name, "renamelimit"))
199 cgit_renamelimit = atoi(value); 200 cgit_renamelimit = atoi(value);
201 else if (!strcmp(name, "robots"))
202 cgit_robots = xstrdup(value);
200 else if (!strcmp(name, "repo.group")) 203 else if (!strcmp(name, "repo.group"))
201 cgit_repo_group = xstrdup(value); 204 cgit_repo_group = xstrdup(value);
202 else if (!strcmp(name, "repo.url")) 205 else if (!strcmp(name, "repo.url"))
203 cgit_repo = add_repo(value); 206 cgit_repo = add_repo(value);
204 else if (!strcmp(name, "repo.name")) 207 else if (!strcmp(name, "repo.name"))
205 cgit_repo->name = xstrdup(value); 208 cgit_repo->name = xstrdup(value);
206 else if (cgit_repo && !strcmp(name, "repo.path")) 209 else if (cgit_repo && !strcmp(name, "repo.path"))
207 cgit_repo->path = trim_end(value, '/'); 210 cgit_repo->path = trim_end(value, '/');
208 else if (cgit_repo && !strcmp(name, "repo.desc")) 211 else if (cgit_repo && !strcmp(name, "repo.desc"))
209 cgit_repo->desc = xstrdup(value); 212 cgit_repo->desc = xstrdup(value);
210 else if (cgit_repo && !strcmp(name, "repo.owner")) 213 else if (cgit_repo && !strcmp(name, "repo.owner"))
211 cgit_repo->owner = xstrdup(value); 214 cgit_repo->owner = xstrdup(value);
diff --git a/ui-shared.c b/ui-shared.c
index 5192800..2f771da 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -355,24 +355,26 @@ void cgit_print_docstart(char *title, struct cacheitem *item)
355 html("Content-Type: text/html; charset=" PAGE_ENCODING "\n"); 355 html("Content-Type: text/html; charset=" PAGE_ENCODING "\n");
356 htmlf("Last-Modified: %s\n", http_date(item->st.st_mtime)); 356 htmlf("Last-Modified: %s\n", http_date(item->st.st_mtime));
357 htmlf("Expires: %s\n", http_date(item->st.st_mtime + 357 htmlf("Expires: %s\n", http_date(item->st.st_mtime +
358 ttl_seconds(item->ttl))); 358 ttl_seconds(item->ttl)));
359 html("\n"); 359 html("\n");
360 html(cgit_doctype); 360 html(cgit_doctype);
361 html("<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>\n"); 361 html("<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>\n");
362 html("<head>\n"); 362 html("<head>\n");
363 html("<title>"); 363 html("<title>");
364 html_txt(title); 364 html_txt(title);
365 html("</title>\n"); 365 html("</title>\n");
366 htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version); 366 htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version);
367 if (cgit_robots && *cgit_robots)
368 htmlf("<meta name='robots' content='%s'/>\n", cgit_robots);
367 html("<link rel='stylesheet' type='text/css' href='"); 369 html("<link rel='stylesheet' type='text/css' href='");
368 html_attr(cgit_css); 370 html_attr(cgit_css);
369 html("'/>\n"); 371 html("'/>\n");
370 html("</head>\n"); 372 html("</head>\n");
371 html("<body>\n"); 373 html("<body>\n");
372} 374}
373 375
374void cgit_print_docend() 376void cgit_print_docend()
375{ 377{
376 html("</td>\n</tr>\n</table>\n</body>\n</html>\n"); 378 html("</td>\n</tr>\n</table>\n</body>\n</html>\n");
377} 379}
378 380