Files
DOMINIK SCHRADER 007dfc57fd Initial Commit
2025-12-01 11:30:25 +01:00

38 lines
1.3 KiB
PHP

<?php
global $db;
try {
$query = "SELECT
k.id,
k.name,
k.beschreibung,
k.gebuehr,
k.max_teilnehmer,
COUNT(a.id) as belegte_plaetze,
(k.max_teilnehmer - COUNT(a.id)) as freie_plaetze,
CASE WHEN COUNT(a.id) >= k.max_teilnehmer THEN 0 ELSE 1 END as verfuegbar
FROM kurse k
LEFT JOIN anmeldungen a ON k.id = a.kurs_id
GROUP BY k.id
ORDER BY k.name";
$stmt = $db->prepare($query);
$stmt->execute();
$kurse = [];
while ($row = $stmt->fetch()) {
$kurse[] = [
'id' => (int)$row['id'],
'name' => $row['name'],
'beschreibung' => $row['beschreibung'],
'gebuehr' => (float)$row['gebuehr'],
'max_teilnehmer' => (int)$row['max_teilnehmer'],
'belegte_plaetze' => (int)$row['belegte_plaetze'],
'freie_plaetze' => (int)$row['freie_plaetze'],
'verfuegbar' => (bool)$row['verfuegbar']
];
}
echo json_encode($kurse);
} catch (Exception $e) {
error_log("Error in kurse/get.php: " . $e->getMessage());
http_response_code(500);
echo json_encode(['message' => 'Fehler beim Laden der Kurse']);
}