getHourlyGrid($week, $entries, $SP_FULL_DAY); $hours = $gridData['hours']; $grid = $gridData['grid']; $hasData = $gridData['hasData']; // Wochentag-Map $weekdayMap = [ 'Mo' => $lang->get('sendeplan_montag', 'Montag'), 'Di' => $lang->get('sendeplan_dienstag', 'Dienstag'), 'Mi' => $lang->get('sendeplan_mittwoch', 'Mittwoch'), 'Do' => $lang->get('sendeplan_donnerstag', 'Donnerstag'), 'Fr' => $lang->get('sendeplan_freitag', 'Freitag'), 'Sa' => $lang->get('sendeplan_samstag', 'Samstag'), 'So' => $lang->get('sendeplan_sonntag', 'Sonntag'), ]; function e(string $value): string { return htmlspecialchars($value, ENT_QUOTES, 'UTF-8'); } ?> <?= $lang->get('sendeplan_title', '📅 Sendeplan') ?> – <?= $lang->get('sendeplan_table_title_short', 'Übersicht') ?>

get('sendeplan_table_title', '🎛️ Sendeplan Tabelle') ?>

get('sendeplan_week', 'KW') ?> · –
get('sendeplan_week', 'KW') ?> · – get('sendeplan_view_week', '📋 Wochen Ansicht') ?>
get('sendeplan_no_entries_this_week', 'Keine Sendungen in dieser Woche eingetragen.') ?>
get('sendeplan_time_col', 'Zeit') ?>
getWeekday($day); $weekday = $weekdayMap[$weekdayShort] ?? $weekdayShort; $dayNum = (new DateTime($day))->format('d.m.Y'); $isToday = $manager->isToday($day); ?>
= $chkEntry['zeit_von'] && $nowTime <= $chkEntry['zeit_bis']) { $cellIsNow = true; break; } } else { if ($nowTime >= $chkEntry['zeit_von']) { $cellIsNow = true; break; } } } elseif ($chkEntry['datum'] === $prevDate && $chkOvernight) { if ($nowTime <= $chkEntry['zeit_bis']) { $cellIsNow = true; break; } } } if (empty($slots)) { // Auto DJ ?>
<?= e($lang->get('sendeplan_autodj', 'Auto DJ')) ?>
get('sendeplan_zeitteiler', 'Zeitteiler'); $slotClass = 'sp3-slot-zeitteiler'; } else { if (!empty($entry['moderator_avatar']) && $entry['moderator_avatar'] !== 'noavatar.jpg') { $imgSrc = 'avatar/' . $entry['moderator_avatar']; } else { $imgSrc = 'avatar/noavatar.jpg'; } $name = !empty($entry['moderator_name']) ? $entry['moderator_name'] : $lang->get('sendeplan_mod_fallback', 'Mod'); $slotClass = ''; } // Tooltip-Daten $ttTime = $manager->formatTime($entry['zeit_von']) . ' – ' . $manager->formatTime($entry['zeit_bis']); $ttName = $entry['sendungsname']; $ttMod = !empty($entry['moderator_name']) ? $entry['moderator_name'] : ''; $ttDesc = $entry['beschreibung'] ?? ''; $ttWunsch = !empty($entry['wunschbox_aktiv']) ? '1' : '0'; ?>
<?= e($name) ?>