{source}<?php
$user = JFactory::getUser();
$date = new JDate();

/*
* Datenbankverbindung aufbauen
*/
$db = JFactory::getDbo();
$query = $db->getQuery(true);

/*
* 1. Query für Datenbankabfrage, Minuend für Berechnung (alle Dienste gesamt)
*
* Events gesamt (auch keine Basisdienste) zusammengelegt mit Registrierungen, gefiltert nach catid(6 = Typ basisdienst) und state(1 = freigegeben für registrierte Nuter). Weiter gefiltert nach allen Diensten die nach dem heutigen Serverdatum stattfinden
* Das Ergebnis wird sortiert nach dem Startdatum.
*/
$query
->select(array(‚a.title‘, ‚a.startdate‘, ‚a.id‘, ‚b.name‘))
->from($db->quoteName(’nfxbg_icagenda_events‘, ‚a‘))
->join(‚LEFT‘, $db->quoteName(’nfxbg_icagenda_registration‘, ‚b‘) . ‚ ON (‚ . $db->quoteName(‚a.id‘) . ‚ = ‚ . $db->quoteName(‚b.eventid‘) . ‚)‘)
->where($db->quoteName(‚a.catid‘).“ = „.$db->quote(6))
->where($db->quoteName(‚a.state‘).“ = „.$db->quote(1))
->where($db->quoteName(‚a.startdate‘).“ >= „.$db->quote($date))
->order($db->quoteName(‚a.startdate‘))
;

/*
* Datenbankverbindung für 2. Query
*/
$db_gebucht = JFactory::getDbo();
$query_gebucht = $db_gebucht->getQuery(true);

/*
* 2. Query für Datenbankabfrage, für gebuchte Basisdienste
*/
$query_gebucht
->select(array(‚a.title‘, ‚a.startdate‘, ‚a.id‘, ‚b.name‘))
->from($db->quoteName(’nfxbg_icagenda_events‘, ‚a‘))
->join(‚RIGHT‘, $db->quoteName(’nfxbg_icagenda_registration‘, ‚b‘) . ‚ ON (‚ . $db->quoteName(‚a.id‘) . ‚ = ‚ . $db->quoteName(‚b.eventid‘) . ‚)‘)
->where($db->quoteName(‚a.catid‘).“ = „.$db->quote(6))
->where($db->quoteName(‚a.state‘).“ = „.$db->quote(1))
->where($db->quoteName(‚a.startdate‘).“ >= „.$db->quote($date))
->order($db->quoteName(‚a.startdate‘))
;

/*
* 1. Query absetzen
*/
$db->setQuery($query);
$results = $db->lohttps://civitest.leipziger-delphine.de/wp-content/uploads/2024/11/weihnachtstauchen_2022_10_20230117_1512305736.jpgObjectList();

/*
* 2. Query absetzen
*/
$db_gebucht->setQuery($query_gebucht);
$results_gebucht = $db_gebucht->lohttps://civitest.leipziger-delphine.de/wp-content/uploads/2024/11/weihnachtstauchen_2022_10_20230117_1512305736.jpgObjectList();

/*
* für Anzeige
*/
$tage = array(„Sonntag“,“Montag“,“Dienstag“,“Mittwoch“,“Donnerstag“,“Freitag“,“Samstag“);

?>

<p>Hallo <?php echo $user->name; ?><br><p>bitte wähle einen freien Basisdienst aus.</p>
<table class=“table“ width=“95%“>
<tbody>
<tr style=“font-weigth: bold;“>
<th>Tag</th>
<th>Datum</th>
<th>Basisdienst durchgeführt von</th>
<th>Link zum Basisdienst</th>
</tr>
</p><div id=“icagenda“><div class=“event“>
<?php

/*
* ANZEIGE BEGINN
*/

/*
* Kopf, in dem angezeigt wird: Begrüßung und wieviele Dienste buchbar sind.
*/
/* Tabelle der Basisdienste gesamt, farblich unterschieden nach Buchungsstatus */
/* * Array aus 1. Query (alle Dienste) */
foreach ($results as $r){
/* * Variable tag soll timestamp machen */
$tag = $tage[date(„w“, strtotime($r->startdate))];
echo “;
/* * String von Name aus Array wird entnommen, kann auch 0 Zeichen enthalten. */
if($r->name == null) { $name = „“; } else { $name = trim($r->name); } //$name = trim($r->name);
/* * letzte Spalte der Tabelle START. Verzweigung: wenn String des Namen 0 Zeichen hat, sollte der Dienst frei sein. */
if($name == “) { echo “; } else { echo “; }
/* * letzte Spalte ENDE */
echo “;
/* * foreach ENDE für alle Zeilen der Tabelle */
}
echo ‚<tr><td>‘ . $tag . ‚</td>‘, ‚<td>‘ . date(„d.m.Y“, strtotime($r->startdate)) . ‚</td>‘, ‚<td><span style=“font-weight: bold;“>‘;
if ($r->name == null) {
echo “;
} else {
echo $r->name;
}
echo ‚</span></td>
<td class=“ic-content“>
<div style=“background: #33ff33;“>
<span class=“cat“>den Basisdienst</span>
<h4><a title=“Detail ansehen“ href=“parkplatzbuchung/‘ . $r->id . ‚-basisdienst/event_details.html“> am ‚ . date(„d.m.Y“, strtotime($r->startdate)) . ‚buchen</a></h4>
</div>
</td>
<td class=“ic-content“>
<div style=“background: #ff0303;“>
<span class=“cat“>dieser Basisdienst </span>
ist bereits gebucht
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>‘;
?>{/source}