Introduce noplainemail option to hide email adresses from spambots

Signed-off-by: Martin Szulecki <opensuse@sukimashita.com>
This commit is contained in:
Martin Szulecki 2009-08-07 14:05:17 +02:00
부모 286a905842
커밋 2f56e390f0
7개의 변경된 파일22개의 추가작업 그리고 7개의 파일을 삭제

2
cgit.c
파일 보기

@ -51,6 +51,8 @@ void config_cb(const char *name, const char *value)
ctx.cfg.virtual_root = "";
} else if (!strcmp(name, "nocache"))
ctx.cfg.nocache = atoi(value);
else if (!strcmp(name, "noplainemail"))
ctx.cfg.noplainemail = atoi(value);
else if (!strcmp(name, "noheader"))
ctx.cfg.noheader = atoi(value);
else if (!strcmp(name, "snapshots"))

1
cgit.h
파일 보기

@ -168,6 +168,7 @@ struct cgit_config {
int max_repodesc_len;
int max_stats;
int nocache;
int noplainemail;
int noheader;
int renamelimit;
int snapshots;

파일 보기

@ -158,6 +158,10 @@ nocache::
deprecated, and will not be honored starting with cgit-1.0. Default
value: "0".
noplainemail::
If set to "1" showing full author email adresses will be disabled.
Default value: "0".
noheader::
Flag which, when set to "1", will make cgit omit the standard header
on all pages. Default value: none. See also: "embedded".

파일 보기

@ -32,7 +32,7 @@ void add_entry(struct commit *commit, char *host)
html_txt(info->author);
html("</name>\n");
}
if (info->author_email) {
if (info->author_email && !ctx.cfg.noplainemail) {
mail = xstrdup(info->author_email);
t = strchr(mail, '<');
if (t)

파일 보기

@ -40,15 +40,19 @@ void cgit_print_commit(char *hex)
html("<table summary='commit info' class='commit-info'>\n");
html("<tr><th>author</th><td>");
html_txt(info->author);
html(" ");
html_txt(info->author_email);
if (!ctx.cfg.noplainemail) {
html(" ");
html_txt(info->author_email);
}
html("</td><td class='right'>");
cgit_print_date(info->author_date, FMT_LONGDATE, ctx.cfg.local_time);
html("</td></tr>\n");
html("<tr><th>committer</th><td>");
html_txt(info->committer);
html(" ");
html_txt(info->committer_email);
if (!ctx.cfg.noplainemail) {
html(" ");
html_txt(info->committer_email);
}
html("</td><td class='right'>");
cgit_print_date(info->committer_date, FMT_LONGDATE, ctx.cfg.local_time);
html("</td></tr>\n");

파일 보기

@ -108,7 +108,11 @@ void cgit_print_patch(char *hex)
ctx.page.filename = patchname;
cgit_print_http_headers(&ctx);
htmlf("From %s Mon Sep 17 00:00:00 2001\n", sha1_to_hex(sha1));
htmlf("From: %s %s\n", info->author, info->author_email);
htmlf("From: %s", info->author);
if (!ctx.cfg.noplainemail) {
htmlf(" %s", info->author_email);
}
html("\n");
html("Date: ");
cgit_print_date(info->author_date, "%a, %d %b %Y %H:%M:%S %z%n", ctx.cfg.local_time);
htmlf("Subject: %s\n\n", info->subject);

파일 보기

@ -64,7 +64,7 @@ void cgit_print_tag(char *revname)
if (info->tagger) {
html("<tr><td>Tagged by</td><td>");
html_txt(info->tagger);
if (info->tagger_email) {
if (info->tagger_email && !ctx.cfg.noplainemail) {
html(" ");
html_txt(info->tagger_email);
}