mirror of
https://git.zx2c4.com/cgit
synced 2024-11-22 00:18:41 +00:00
css: change to be a list
Without changing the default behaviour of including /cgit.css if nothing declared, allow the "css" config to be given multiple times listing one or more alternative URL paths to be included in the document head area. Signed-off-by: Andy Green <andy@warmcat.com> Signed-off-by: Christian Hesse <mail@eworm.de>
This commit is contained in:
parent
91f25909b9
commit
093ac96970
3
cgit.c
3
cgit.c
@ -142,7 +142,7 @@ static void config_cb(const char *name, const char *value)
|
|||||||
else if (!strcmp(name, "root-readme"))
|
else if (!strcmp(name, "root-readme"))
|
||||||
ctx.cfg.root_readme = xstrdup(value);
|
ctx.cfg.root_readme = xstrdup(value);
|
||||||
else if (!strcmp(name, "css"))
|
else if (!strcmp(name, "css"))
|
||||||
ctx.cfg.css = xstrdup(value);
|
string_list_append(&ctx.cfg.css, xstrdup(value));
|
||||||
else if (!strcmp(name, "favicon"))
|
else if (!strcmp(name, "favicon"))
|
||||||
ctx.cfg.favicon = xstrdup(value);
|
ctx.cfg.favicon = xstrdup(value);
|
||||||
else if (!strcmp(name, "footer"))
|
else if (!strcmp(name, "footer"))
|
||||||
@ -378,7 +378,6 @@ static void prepare_context(void)
|
|||||||
ctx.cfg.case_sensitive_sort = 1;
|
ctx.cfg.case_sensitive_sort = 1;
|
||||||
ctx.cfg.branch_sort = 0;
|
ctx.cfg.branch_sort = 0;
|
||||||
ctx.cfg.commit_sort = 0;
|
ctx.cfg.commit_sort = 0;
|
||||||
ctx.cfg.css = "/cgit.css";
|
|
||||||
ctx.cfg.logo = "/cgit.png";
|
ctx.cfg.logo = "/cgit.png";
|
||||||
ctx.cfg.favicon = "/favicon.ico";
|
ctx.cfg.favicon = "/favicon.ico";
|
||||||
ctx.cfg.local_time = 0;
|
ctx.cfg.local_time = 0;
|
||||||
|
2
cgit.h
2
cgit.h
@ -195,7 +195,6 @@ struct cgit_config {
|
|||||||
char *cache_root;
|
char *cache_root;
|
||||||
char *clone_prefix;
|
char *clone_prefix;
|
||||||
char *clone_url;
|
char *clone_url;
|
||||||
char *css;
|
|
||||||
char *favicon;
|
char *favicon;
|
||||||
char *footer;
|
char *footer;
|
||||||
char *head_include;
|
char *head_include;
|
||||||
@ -206,6 +205,7 @@ struct cgit_config {
|
|||||||
char *module_link;
|
char *module_link;
|
||||||
char *project_list;
|
char *project_list;
|
||||||
struct string_list readme;
|
struct string_list readme;
|
||||||
|
struct string_list css;
|
||||||
char *robots;
|
char *robots;
|
||||||
char *root_title;
|
char *root_title;
|
||||||
char *root_desc;
|
char *root_desc;
|
||||||
|
@ -126,7 +126,8 @@ commit-sort::
|
|||||||
|
|
||||||
css::
|
css::
|
||||||
Url which specifies the css document to include in all cgit pages.
|
Url which specifies the css document to include in all cgit pages.
|
||||||
Default value: "/cgit.css".
|
Default value: "/cgit.css". May be given multiple times, each
|
||||||
|
css URL path is added in the head section of the document in turn.
|
||||||
|
|
||||||
email-filter::
|
email-filter::
|
||||||
Specifies a command which will be invoked to format names and email
|
Specifies a command which will be invoked to format names and email
|
||||||
|
21
ui-shared.c
21
ui-shared.c
@ -768,6 +768,18 @@ static void print_rel_vcs_link(const char *url)
|
|||||||
html(" Git repository'/>\n");
|
html(" Git repository'/>\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int emit_css_link(struct string_list_item *s, void *arg)
|
||||||
|
{
|
||||||
|
html("<link rel='stylesheet' type='text/css' href='");
|
||||||
|
if (s)
|
||||||
|
html_attr(s->string);
|
||||||
|
else
|
||||||
|
html_attr((const char *)arg);
|
||||||
|
html("'/>\n");
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
void cgit_print_docstart(void)
|
void cgit_print_docstart(void)
|
||||||
{
|
{
|
||||||
char *host = cgit_hosturl();
|
char *host = cgit_hosturl();
|
||||||
@ -787,9 +799,12 @@ void cgit_print_docstart(void)
|
|||||||
htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version);
|
htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version);
|
||||||
if (ctx.cfg.robots && *ctx.cfg.robots)
|
if (ctx.cfg.robots && *ctx.cfg.robots)
|
||||||
htmlf("<meta name='robots' content='%s'/>\n", ctx.cfg.robots);
|
htmlf("<meta name='robots' content='%s'/>\n", ctx.cfg.robots);
|
||||||
html("<link rel='stylesheet' type='text/css' href='");
|
|
||||||
html_attr(ctx.cfg.css);
|
if (ctx.cfg.css.items)
|
||||||
html("'/>\n");
|
for_each_string_list(&ctx.cfg.css, emit_css_link, NULL);
|
||||||
|
else
|
||||||
|
emit_css_link(NULL, "/cgit.css");
|
||||||
|
|
||||||
if (ctx.cfg.favicon) {
|
if (ctx.cfg.favicon) {
|
||||||
html("<link rel='shortcut icon' href='");
|
html("<link rel='shortcut icon' href='");
|
||||||
html_attr(ctx.cfg.favicon);
|
html_attr(ctx.cfg.favicon);
|
||||||
|
Loading…
Reference in New Issue
Block a user