diff --git a/theme/templates/macros/cards.html b/theme/templates/macros/cards.html index df5542bfce6e18160b8bcdddf0932ef2b42f01a7..d604956017cc8aaeda46fccc9a3ead2ae063e44b 100644 --- a/theme/templates/macros/cards.html +++ b/theme/templates/macros/cards.html @@ -1,7 +1,7 @@ {%- macro open(id = None, classes = []) -%} - {%- set attr = {"id": id, "classes": classes} -%} - <ul {{ common.render_attr(attr, None)}}> + {%- set attr = {"id": id, "classes": ["cards"], "extra_classes": classes} -%} + <ul {{ common.render_attr(attr, None) }}> {%- endmacro -%} {%- macro close() -%} @@ -9,7 +9,17 @@ {%- endmacro -%} {%- macro card(title, link, catcolor, lang) -%} - <li style="--category-color: {{ catcolor }}">{{ common.render_link(link, title, lang) }}</li> + {%- set attr = namespace(classes=[], style={"--category-color": catcolor}) -%} + {%- set page = link.page -%} + + {%- if page.metadata.has_image -%} + {%- set attr.classes = ["has-image"] -%} + {%- set imageurl = ["url('", [siteurl, page.metadata.image.link.url]|join("/"), "')"]|join() -%} + {#- set imageurl = ["url('", ["http://127.0.0.1:8000/output", page.metadata.image.link.url]|join("/"), "')"]|join() -#} + {#- AHHHHHHHHH... Firefox interpretiert relative background-image urls falsch, wenn diese nicht direkt im inline-style sind! -#} + {%- set attr.style = {"--category-color": catcolor, "--card-image": imageurl, "background-image": imageurl } -%} + {%- endif -%} + <li>{{ common.render_link(link, title, lang, attr=attr) }}</li> {%- endmacro -%} {%- macro card_from_link(link, lang) -%}