mirror of
https://git.zx2c4.com/cgit
synced 2024-11-21 16:08: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"))
|
||||
ctx.cfg.root_readme = xstrdup(value);
|
||||
else if (!strcmp(name, "css"))
|
||||
ctx.cfg.css = xstrdup(value);
|
||||
string_list_append(&ctx.cfg.css, xstrdup(value));
|
||||
else if (!strcmp(name, "favicon"))
|
||||
ctx.cfg.favicon = xstrdup(value);
|
||||
else if (!strcmp(name, "footer"))
|
||||
@ -378,7 +378,6 @@ static void prepare_context(void)
|
||||
ctx.cfg.case_sensitive_sort = 1;
|
||||
ctx.cfg.branch_sort = 0;
|
||||
ctx.cfg.commit_sort = 0;
|
||||
ctx.cfg.css = "/cgit.css";
|
||||
ctx.cfg.logo = "/cgit.png";
|
||||
ctx.cfg.favicon = "/favicon.ico";
|
||||
ctx.cfg.local_time = 0;
|
||||
|
2
cgit.h
2
cgit.h
@ -195,7 +195,6 @@ struct cgit_config {
|
||||
char *cache_root;
|
||||
char *clone_prefix;
|
||||
char *clone_url;
|
||||
char *css;
|
||||
char *favicon;
|
||||
char *footer;
|
||||
char *head_include;
|
||||
@ -206,6 +205,7 @@ struct cgit_config {
|
||||
char *module_link;
|
||||
char *project_list;
|
||||
struct string_list readme;
|
||||
struct string_list css;
|
||||
char *robots;
|
||||
char *root_title;
|
||||
char *root_desc;
|
||||
|
@ -126,7 +126,8 @@ commit-sort::
|
||||
|
||||
css::
|
||||
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::
|
||||
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");
|
||||
}
|
||||
|
||||
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)
|
||||
{
|
||||
char *host = cgit_hosturl();
|
||||
@ -787,9 +799,12 @@ void cgit_print_docstart(void)
|
||||
htmlf("<meta name='generator' content='cgit %s'/>\n", cgit_version);
|
||||
if (ctx.cfg.robots && *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);
|
||||
html("'/>\n");
|
||||
|
||||
if (ctx.cfg.css.items)
|
||||
for_each_string_list(&ctx.cfg.css, emit_css_link, NULL);
|
||||
else
|
||||
emit_css_link(NULL, "/cgit.css");
|
||||
|
||||
if (ctx.cfg.favicon) {
|
||||
html("<link rel='shortcut icon' href='");
|
||||
html_attr(ctx.cfg.favicon);
|
||||
|
Loading…
Reference in New Issue
Block a user