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') ?>
= $lang->get('sendeplan_no_entries_this_week', 'Keine Sendungen in dieser Woche eingetragen.') ?>
getWeekday($day);
$weekday = $weekdayMap[$weekdayShort] ?? $weekdayShort;
$dayNum = (new DateTime($day))->format('d.m.Y');
$isToday = $manager->isToday($day);
?>
= e($hourInfo['label']) ?>
= $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
?>
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) ?>