Add repo.readme parameter
This parameter can be used to specify a repo-specific includefile, which will then be printed on the summary page for the repo. If the parametervalue is a not an absolute path, it is taken to be relative to repo.path. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
This commit is contained in:
bovenliggende
25da3f7625
commit
bbcdc290c6
14
cgit.css
14
cgit.css
@ -140,22 +140,20 @@ td#search input {
|
|||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
td#summary {
|
div#summary {
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
padding-bottom: 1em;
|
margin-bottom: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
td#archivelist {
|
table#downloads {
|
||||||
padding-bottom: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
td#archivelist table {
|
|
||||||
float: right;
|
float: right;
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
border: solid 1px #777;
|
border: solid 1px #777;
|
||||||
|
margin-left: 0.5em;
|
||||||
|
margin-bottom: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
td#archivelist table th {
|
table#downloads th {
|
||||||
background-color: #ccc;
|
background-color: #ccc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
1
cgit.h
1
cgit.h
@ -68,6 +68,7 @@ struct repoinfo {
|
|||||||
char *defbranch;
|
char *defbranch;
|
||||||
char *group;
|
char *group;
|
||||||
char *module_link;
|
char *module_link;
|
||||||
|
char *readme;
|
||||||
int snapshots;
|
int snapshots;
|
||||||
int enable_log_filecount;
|
int enable_log_filecount;
|
||||||
int enable_log_linecount;
|
int enable_log_linecount;
|
||||||
|
1
cgitrc
1
cgitrc
@ -108,3 +108,4 @@
|
|||||||
#repo.enable-log-filecount=0 # override the default filecount setting
|
#repo.enable-log-filecount=0 # override the default filecount setting
|
||||||
#repo.enable-log-linecount=0 # override the default linecount setting
|
#repo.enable-log-linecount=0 # override the default linecount setting
|
||||||
#repo.module-link=/git/%s/commit/?id=%s # override the standard module-link
|
#repo.module-link=/git/%s/commit/?id=%s # override the standard module-link
|
||||||
|
#repo.readme=info/web/readme # specify a file to include on summary page
|
||||||
|
8
shared.c
8
shared.c
@ -107,6 +107,7 @@ struct repoinfo *add_repo(const char *url)
|
|||||||
ret->enable_log_filecount = cgit_enable_log_filecount;
|
ret->enable_log_filecount = cgit_enable_log_filecount;
|
||||||
ret->enable_log_linecount = cgit_enable_log_linecount;
|
ret->enable_log_linecount = cgit_enable_log_linecount;
|
||||||
ret->module_link = cgit_module_link;
|
ret->module_link = cgit_module_link;
|
||||||
|
ret->readme = NULL;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -187,7 +188,12 @@ void cgit_global_config_cb(const char *name, const char *value)
|
|||||||
cgit_repo->enable_log_linecount = cgit_enable_log_linecount * atoi(value);
|
cgit_repo->enable_log_linecount = cgit_enable_log_linecount * atoi(value);
|
||||||
else if (cgit_repo && !strcmp(name, "repo.module-link"))
|
else if (cgit_repo && !strcmp(name, "repo.module-link"))
|
||||||
cgit_repo->module_link= xstrdup(value);
|
cgit_repo->module_link= xstrdup(value);
|
||||||
else if (!strcmp(name, "include"))
|
else if (cgit_repo && !strcmp(name, "repo.readme") && value != NULL) {
|
||||||
|
if (*value == '/')
|
||||||
|
cgit_repo->readme = xstrdup(value);
|
||||||
|
else
|
||||||
|
cgit_repo->readme = xstrdup(fmt("%s/%s", cgit_repo->path, value));
|
||||||
|
} else if (!strcmp(name, "include"))
|
||||||
cgit_read_config(value, cgit_global_config_cb);
|
cgit_read_config(value, cgit_global_config_cb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
14
ui-summary.c
14
ui-summary.c
@ -153,7 +153,7 @@ static int cgit_print_archive_cb(const char *refname, const unsigned char *sha1,
|
|||||||
hashcpy(fileid, sha1);
|
hashcpy(fileid, sha1);
|
||||||
}
|
}
|
||||||
if (!header) {
|
if (!header) {
|
||||||
html("<table>");
|
html("<table id='downloads'>");
|
||||||
html("<tr><th>Downloads</th></tr>");
|
html("<tr><th>Downloads</th></tr>");
|
||||||
header = 1;
|
header = 1;
|
||||||
}
|
}
|
||||||
@ -193,16 +193,18 @@ static void cgit_print_archives()
|
|||||||
|
|
||||||
void cgit_print_summary()
|
void cgit_print_summary()
|
||||||
{
|
{
|
||||||
html("<table class='list nowrap'>");
|
html("<div id='summary'>");
|
||||||
html("<tr class='nohover'><td id='summary' colspan='3'>");
|
cgit_print_archives();
|
||||||
html("<h2>");
|
html("<h2>");
|
||||||
html_txt(cgit_repo->name);
|
html_txt(cgit_repo->name);
|
||||||
html(" - ");
|
html(" - ");
|
||||||
html_txt(cgit_repo->desc);
|
html_txt(cgit_repo->desc);
|
||||||
html("</h2>");
|
html("</h2>");
|
||||||
html("</td><td id='archivelist'>");
|
if (cgit_repo->readme)
|
||||||
cgit_print_archives();
|
html_include(cgit_repo->readme);
|
||||||
html("</td></tr>");
|
html("</div>");
|
||||||
|
|
||||||
|
html("<table class='list nowrap'>");
|
||||||
cgit_print_branches();
|
cgit_print_branches();
|
||||||
html("<tr class='nohover'><td colspan='4'> </td></tr>");
|
html("<tr class='nohover'><td colspan='4'> </td></tr>");
|
||||||
cgit_print_tags();
|
cgit_print_tags();
|
||||||
|
Laden…
Verwijs in nieuw issue
Block a user