Moin in die Runde,
ich schlage mich augenblicklich mit dieser wirklich hilfreichen Erweiterung in einem Punkt herum. Vermutlich habe ich einen Denkfehler bzw. sehe den Wald vor lauter Bäumen nicht.
In meinem Projekt möchte ich im Eventreader für einen Event die kommenden z.B. 10 Termine darstellen. Das event_full Template habe ich dahingehend angepaßt und es funktioniert inklusive Exceptions und Fixed Dates inzwischen erfolgreich.
Wo ich augenblicklich am kauen bin, ist die Darstellung bei sich wiederholenden Terminen unterteilt nach Wochentagen. Ist die Auswahl Bsp.: 1 Tage - 14 Mal wiederholen Mitwoch/Donnerstag, so erhalte ich als Liste jeden Tag ab Startdate -> 14 Tage später.
In der Darstellung im Kalender arbeitet calendar_extended die Termine richtig ab, aber im Eventreader komme ich nicht so recht weiter.
Beiliegend der Codeschnipsel aus dem modifizierten Template für die Darstellung der Wiederholungen:
Code:
if ($key > $yesterday) {
$dat_start= date('d.m.Y',strtotime($value['str_start']));
$dat_end = date('d.m.Y',strtotime($value['str_end']));
$time_start = date('H:i',strtotime($value['str_start']));
$time_end = date('H:i',strtotime($value['str_end']));
if ($this->addTime != 1)$time_start = '';
if ($this->addTime == 1 && $this->ignoreEndTime != 1 ){
$time_end = ' - '.date('H:i',strtotime($value['str_end']));
}else {$time_end = '';}
if ($dat_start == $dat_end) $dat_end = '';
$extraKey = array_search($dat_start, array_column($extraDates, 'new_repeat'));
if (strlen($extraKey)) $reason = $extraDates[$extraKey]['reason'];
// Move Exception integrieren
if (array_key_exists($key,$exc)){
if ($exc[$key]['action'] == 'move'){
$newStartDate = new DateTime($value['str_start']);
$newStartDate->modify($exc[$key]['new_exception']);
$dat_start = $newStartDate->format('d.m.Y');
$diff = $this->endDate-$this->startDate;
if ($this->endDate && $this->ignoreEndTime != 1)$dat_end =date('d.m.Y',(strtotime($dat_start)+$diff));
$reason = $exc[$key]['reason'];
}
if ($exc[$key]['action'] == 'hide'){
$dat_hide[$a]['date'] = $dat_start;
$dat_hide[$a]['css'] = $exc[$key]['cssclass'];
$dat_hide[$a]['reason'] = $exc[$key]['reason'];
$a++;
$i--;
continue;
}
Eventuell ist mein Denkansatz falsch, ich wäre über einen Tipp sehr erfreut.
Mit netten Grüßen
HUL
Contao: 3.5.17
PHP 5.6.x
Lesezeichen