ui-shared: add homepage to tabs

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
Jason A. Donenfeld 2016-02-22 16:04:15 +01:00
bovenliggende 75298209bf
commit 5f2664f13c
7 gewijzigde bestanden met toevoegingen van 26 en 5 verwijderingen

4
cgit.c
Bestand weergeven

@ -41,6 +41,8 @@ static void repo_config(struct cgit_repo *repo, const char *name, const char *va
repo->desc = xstrdup(value);
else if (!strcmp(name, "owner"))
repo->owner = xstrdup(value);
else if (!strcmp(name, "homepage"))
repo->homepage = xstrdup(value);
else if (!strcmp(name, "defbranch"))
repo->defbranch = xstrdup(value);
else if (!strcmp(name, "snapshots"))
@ -793,6 +795,8 @@ static void print_repo(FILE *f, struct cgit_repo *repo)
fprintf(f, "repo.module-link=%s\n", repo->module_link);
if (repo->section)
fprintf(f, "repo.section=%s\n", repo->section);
if (repo->homepage)
fprintf(f, "repo.homepage=%s\n", repo->homepage);
if (repo->clone_url)
fprintf(f, "repo.clone-url=%s\n", repo->clone_url);
fprintf(f, "repo.enable-commit-graph=%d\n",

Bestand weergeven

@ -85,6 +85,11 @@ div#cgit table.tabs td a.active {
background-color: #ccc;
}
div#cgit table.tabs a[href^="http://"]:after, div#cgit table.tabs a[href^="https://"]:after {
content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAQAAAAnOwc2AAAAAnNCSVQICFXsRgQAAAAJcEhZcwAAABQAAAAUAVyMgXwAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAeklEQVQI12NoYCu3q3ABwXL98vTy/0D4jaF8XXldRRoYejAwlu8BCTOU72SAg4q08j/le0GC22BC5anlfyrSGBiBGCZYllz+pywLJg8WLOMtf1GeCjRgI5IgSBhMboUIHq40r1CCQrfyDRAV6uXdZTMhsKKlVIIBFwAAVeg4KFYK95cAAAAASUVORK5CYII=);
margin: 0 0 0 5px;
}
div#cgit table.tabs td.form {
text-align: right;
}

1
cgit.h
Bestand weergeven

@ -81,6 +81,7 @@ struct cgit_repo {
char *path;
char *desc;
char *owner;
char *homepage;
char *defbranch;
char *module_link;
struct string_list readme;

Bestand weergeven

@ -205,11 +205,11 @@ enable-git-config::
Flag which, when set to "1", will allow cgit to use git config to set
any repo specific settings. This option is used in conjunction with
"scan-path", and must be defined prior, to augment repo-specific
settings. The keys gitweb.owner, gitweb.category, and gitweb.description
will map to the cgit keys repo.owner, repo.section, and repo.desc,
respectively. All git config keys that begin with "cgit." will be mapped
to the corresponding "repo." key in cgit. Default value: "0". See also:
scan-path, section-from-path.
settings. The keys gitweb.owner, gitweb.category, gitweb.description,
and gitweb.homepage will map to the cgit keys repo.owner, repo.section,
repo.desc, and repo.homepage respectively. All git config keys that begin
with "cgit." will be mapped to the corresponding "repo." key in cgit.
Default value: "0". See also: scan-path, section-from-path.
favicon::
Url used as link to a shortcut icon for cgit. It is suggested to use
@ -496,6 +496,9 @@ repo.defbranch::
repo.desc::
The value to show as repository description. Default value: none.
repo.homepage::
The value to show as repository homepage. Default value: none.
repo.email-filter::
Override the default email-filter. Default value: none. See also:
"enable-filter-overrides". See also: "FILTER API".

Bestand weergeven

@ -61,6 +61,8 @@ static int gitconfig_config(const char *key, const char *value, void *cb)
config_fn(repo, "desc", value);
else if (!strcmp(key, "gitweb.category"))
config_fn(repo, "section", value);
else if (!strcmp(key, "gitweb.homepage"))
config_fn(repo, "homepage", value);
else if (starts_with(key, "cgit."))
config_fn(repo, key + 5, value);

Bestand weergeven

@ -54,6 +54,7 @@ struct cgit_repo *cgit_add_repo(const char *url)
ret->path = NULL;
ret->desc = cgit_default_repo_desc;
ret->owner = NULL;
ret->homepage = NULL;
ret->section = ctx.cfg.section;
ret->snapshots = ctx.cfg.snapshots;
ret->enable_commit_graph = ctx.cfg.enable_commit_graph;

Bestand weergeven

@ -997,6 +997,11 @@ void cgit_print_pageheader(void)
if (ctx.repo->max_stats)
cgit_stats_link("stats", NULL, hc("stats"),
ctx.qry.head, ctx.qry.vpath);
if (ctx.repo->homepage) {
html("<a href='");
html_attr(ctx.repo->homepage);
html("' target='_blank'>homepage</a>");
}
html("</td><td class='form'>");
html("<form class='right' method='get' action='");
if (ctx.cfg.virtual_root) {