
Zitat von
pandroid

Mit großem Schrecken muss ich gerade feststellen, dass die ganze Nachdenkerei völlig umsonst war. Riesen Denkfehler: Die Klasse macht nur Sinn, wenn jeweils nur ein Event an einem Tag stattfindet. Das man aber natürlich mehrere Events aus verschiedenen Kalendern an einem Tag haben kann, ist eigentlich logisch. So markiert er immer in der Farbe des zuletzt angelegten Events. Wahrscheinlich lass ich es trotzdem laufen, da bei diesem Projekt die Wahrscheinlichkeit sich überschneidender Termine eher gering ist.
Es gibt dafür eine Lösung:
cal_mini.template
PHP-Code:
class="<?php echo $day['class']; ?>
<?php $out = ''; ?>
<?php foreach ($day['events'] as $event): ?>
<?php $out .= "cal_".$event['pid'].";"; ?>
<?php endforeach; ?>
<?php echo $out = substr(implode(' ', array_unique(explode(';', $out))),0,-1); ?>
"
Alle PID werden gesammelt, die doppelten entfernt und der Klasse hinzugefügt.
Das Ergebnis sieht dann so aus:
HTML-Code:
class="days active cal_1 cal_3"
Damit lassen sich mit eleganten transparenten png's Minicalender mit unterschiedelichen Tageskennungen realisieren.