Hallo,
ich stehe vor einem Problem bei einer Extension. Ich will eine Art tabellarischen Terminkalender machen. Wenn zum Beispiel Januar keine Termine enthält, soll er auch nicht als Überschrift angezeigt werden.
Mein Template sieht so aus:
<!--###EVENT_CALENDAR### begin-->
<div id="ecalendar">
<table>
<!--###MONTHS###-->
<tr>
<th class="eheader" colspan="4">###MONTH###</th>
</tr>
<tr>
<td>Datum</td>
<td>Veranstaltung</td>
<td>Veranstaltungsort</td>
<td>Veranstalter</td>
</tr>
<!--###ROW###-->
<tr>
<td>###STARTDATE###<br />-<br />###ENDDATE###</td>
<td>###TITLE###</td>
<td>###LOCATION###</td>
<td>###NAME###</td>
</tr>
<!--###ROW###-->
<!--###MONTHS###-->
</table>
</div>
<!--###EVENT_CALENDAR### end-->
Ein Teil des php-Codes sieht so aus:
$subpart = $this->cObj->getSubpart($this->template, "###EVENT_CALENDAR###");
$singlerow_month = $this->cObj->getSubpart($subpart, "###MONTHS###");
$singlerow = $this->cObj->getSubpart($subpart_month, "###ROW###");
[...]
if(count($january) > 0) {
$markerArray["###MONTH###"] .= "Januar";
$month = $this->cObj->substituteMarkerArrayCached($singlerow_month, $markerArray);
$subpartArray_month = $month;
for($i = 0; $i < count($january); $i++) {
$daten = explode("; ", $january[$i]);
$uid = $daten[0];
$startdate = $daten[1];
$enddate = $daten[2];
$title = $daten[3];
$location = $daten[4];
$web = $daten[5];
$markerArray["###STARTDATE###"] = $startdate;
$markerArray["###ENDDATE###"] = $enddate;
$markerArray["###TITLE###"] = $title;
$markerArray["###LOCATION###"] = $location;
$markerArray["###NAME###"] = $web;
$list .= $this->cObj->substituteMarkerArrayCached($singlerow, $markerArray);
}
}
$subpartArray["###MONTHS###"] = $month;
$subpartArray["###ROW###"] = $list;
$content = $this->cObj->substituteMarkerArrayCached($subpart, $markerArray, $subpartArray);
}
Leider funktioniert es nicht wie es sollte.
Es werden alle Monate in den marker ###MONTH### nacheinander hineingeschrieben, ohne dazwischen die restlichen marker zu setzen.
Ich hoffe ihr versteht was ich meine.
Vielen Dank schonmal im Vorraus.
philipp