all repos — cgit @ 9af580d8f6e31ccd68307a728a710c525e4133ab

a hyperfast web frontend for git written in c

Merge branch 'sn/subject-link'
Lars Hjemli hjemli@gmail.com
Sat, 19 Jun 2010 11:38:46 +0200
commit

9af580d8f6e31ccd68307a728a710c525e4133ab

parent

023d933121ca7352a069f3886caf6fbe958ba27d

5 files changed, 25 insertions(+), 4 deletions(-)

jump to
M cgit.ccgit.c

@@ -62,6 +62,8 @@ else if (!strcmp(name, "enable-log-linecount"))

repo->enable_log_linecount = ctx.cfg.enable_log_linecount * atoi(value); else if (!strcmp(name, "enable-remote-branches")) repo->enable_remote_branches = atoi(value); + else if (!strcmp(name, "enable-subject-links")) + repo->enable_subject_links = atoi(value); else if (!strcmp(name, "max-stats")) repo->max_stats = cgit_find_stats_period(value, NULL); else if (!strcmp(name, "module-link"))

@@ -141,6 +143,8 @@ else if (!strcmp(name, "enable-log-linecount"))

ctx.cfg.enable_log_linecount = atoi(value); else if (!strcmp(name, "enable-remote-branches")) ctx.cfg.enable_remote_branches = atoi(value); + else if (!strcmp(name, "enable-subject-links")) + ctx.cfg.enable_subject_links = atoi(value); else if (!strcmp(name, "enable-tree-linenumbers")) ctx.cfg.enable_tree_linenumbers = atoi(value); else if (!strcmp(name, "max-stats"))
M cgit.hcgit.h

@@ -73,6 +73,7 @@ int snapshots;

int enable_log_filecount; int enable_log_linecount; int enable_remote_branches; + int enable_subject_links; int max_stats; time_t mtime; struct cgit_filter *about_filter;

@@ -181,6 +182,7 @@ int enable_index_links;

int enable_log_filecount; int enable_log_linecount; int enable_remote_branches; + int enable_subject_links; int enable_tree_linenumbers; int local_time; int max_repo_count;
M cgitrc.5.txtcgitrc.5.txt

@@ -115,6 +115,12 @@ Flag which, when set to "1", will make cgit display remote branches

in the summary and refs views. Default value: "0". See also: "repo.enable-remote-branches". +enable-subject-links:: + Flag which, when set to "1", will make cgit use the subject of the + parent commit as link text when generating links to parent commits + in commit view. Default value: "0". See also: + "repo.enable-subject-links". + enable-tree-linenumbers:: Flag which, when set to "1", will make cgit generate linenumber links for plaintext blobs printed in the tree view. Default value: "1".

@@ -320,6 +326,10 @@

repo.enable-remote-branches:: Flag which, when set to "1", will make cgit display remote branches in the summary and refs views. Default value: <enable-remote-branches>. + +repo.enable-subject-links:: + A flag which can be used to override the global setting + `enable-subject-links'. Default value: none. repo.max-stats:: Override the default maximum statistics period. Valid values are equal
M shared.cshared.c

@@ -60,6 +60,7 @@ ret->snapshots = ctx.cfg.snapshots;

ret->enable_log_filecount = ctx.cfg.enable_log_filecount; ret->enable_log_linecount = ctx.cfg.enable_log_linecount; ret->enable_remote_branches = ctx.cfg.enable_remote_branches; + ret->enable_subject_links = ctx.cfg.enable_subject_links; ret->max_stats = ctx.cfg.max_stats; ret->module_link = ctx.cfg.module_link; ret->readme = NULL;
M ui-commit.cui-commit.c

@@ -15,10 +15,10 @@

void cgit_print_commit(char *hex) { struct commit *commit, *parent; - struct commitinfo *info; + struct commitinfo *info, *parent_info; struct commit_list *p; unsigned char sha1[20]; - char *tmp; + char *tmp, *tmp2; int parents = 0; if (!hex)

@@ -82,8 +82,12 @@ continue;

} html("<tr><th>parent</th>" "<td colspan='2' class='sha1'>"); - cgit_commit_link(sha1_to_hex(p->item->object.sha1), NULL, NULL, - ctx.qry.head, sha1_to_hex(p->item->object.sha1), 0); + tmp = tmp2 = sha1_to_hex(p->item->object.sha1); + if (ctx.repo->enable_subject_links) { + parent_info = cgit_parse_commit(parent); + tmp2 = parent_info->subject; + } + cgit_commit_link(tmp2, NULL, NULL, ctx.qry.head, tmp, 0); html(" ("); cgit_diff_link("diff", NULL, NULL, ctx.qry.head, hex, sha1_to_hex(p->item->object.sha1), NULL, 0);