So, reicht - das, was ich bauen wollte, funktioniert für meine Zwecke und ist handhabbar. Vorerst finaler Stand (falls mir nicht noch weitere Ideen kommen):
_1.png
Falls es jemand nachbauen oder erweitern will:
Inhalt von <shng-dir>/items/jahreskalender.yaml:
Inhalt von <smartVISU-dir>/pages/<deine-page>/jahreskalender.html:
Befüllen der Items (Nutzung von copy/paste empfohlen - Zeilenumbrüche ggf. über < br / > realisieren):
_2.png
Hinweis: Das oben verwendete Template '1block' ist eine Eigenentwicklung. {% extends "1block.html" %} sollte durch das aktuell verwendete Template ersetzt werden. Viel Erfolg.
/tom
_1.png
Falls es jemand nachbauen oder erweitern will:
Inhalt von <shng-dir>/items/jahreskalender.yaml:
Code:
%YAML 1.1
---
jahreskalender:
Januar:
type: str
cache: true
Februar:
type: str
cache: true
Maerz:
type: str
cache: true
April:
type: str
cache: true
Mai:
type: str
cache: true
Juni:
type: str
cache: true
Juli:
type: str
cache: true
August:
type: str
cache: true
September:
type: str
cache: true
Oktober:
type: str
cache: true
November:
type: str
cache: true
Dezember:
type: str
cache: true
Code:
{% extends "1block.html" %}
{% block one %}
<style type="text/css">
.calblock {
display: inline-block;
vertical-align: top;
overflow: hidden;
height: 40vh;
width: 15%;
margin: 10px 10px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.calheader {
text-align: center;
font-weight: bold;
line-height: 2;
}
</style>
{% set months_locale = [
'Januar', 'Februar', 'Maerz',
'April', 'Mai', 'Juni',
'Juli', 'August', 'September',
'Oktober', 'November', 'Dezember'
] %}
{% set months_calcolors = [
'#9ddbff, #393663, #9ddbff', '#b0edff, #1849a5, #b0edff', '#d6fced, #479386, #d6fced',
'#efffcb, #7f9e40, #efffcb', '#ffff9e, #add133, #ffff9e', '#ffffa2, #fa9f1d, #ffffa2',
'#fffed8, #f2652d, #fffed8', '#ffe1e3, #a51610, #ffe1e3', '#ead7ff, #71357b, #ead7ff',
'#ffc2ff, #9c2e87, #ffc2ff', '#d6f7fe, #1fa4b5, #d6f7fe', '#deedff, #6675ae, #deedff'
] %}
<br/><br/>
<center>
{% for month in 1..12 %}
<div class='calblock' style='border: {%if "now"|date('m')==month%} 5px {%else%} 1px {%endif%} {{months_calcolors[month-1]|slice(0,7)}} solid;'>
<div class='calheader' style='background-image: linear-gradient(0.33turn, {{ months_calcolors[month-1]}} )'>{{months_locale[month-1]|replace({'ae':'ä'})}}</div>
<span style='text-align:left'>{{ basic.print('', 'jahreskalender.'~months_locale[month-1], 'html') }}</span>
</div>
{% endfor %}
</center>
{% endblock %}
_2.png
Hinweis: Das oben verwendete Template '1block' ist eine Eigenentwicklung. {% extends "1block.html" %} sollte durch das aktuell verwendete Template ersetzt werden. Viel Erfolg.
/tom


Kommentar