Textbausteiene Monats verbessert

This commit is contained in:
2026-04-20 10:34:18 +02:00
parent 64a0195c87
commit d01f190aed
+45 -6
View File
@@ -11,6 +11,31 @@ $publicBasePath = './';
$currentYear = (int) date('Y');
$selectedYear = isset($_GET['year']) ? (int) $_GET['year'] : $currentYear;
$selectedMonth = isset($_GET['month']) ? max(1, min(12, (int) $_GET['month'])) : (int) date('n');
// -------------------------------------------------------------------------
// Bereits berechnete Bausteine der Monatsvorschau
// -------------------------------------------------------------------------
// Stand heute erzeugt diese Seite bereits:
// - Monats-Sternkarten für Nordhimmel und Südhimmel
// - Mond- und Planetenkontext für die feste Monatszeit
// - Mondphasen des Monats
// - Goldener-Henkel-Termine
// - Jahreszeitenwechsel und Zeitumstellungen
// - Sonnen- und Mondfinsternisse
// - Perigäum/Apogäum des Mondes sowie Perihel/Aphel der Sonne
// - Größte Elongationen von Merkur/Venus und größte Venushelligkeit
// - Ereignisse äußerer Planeten und deren Stillstände
// - Jupitermonde auf nur einer Planetenseite
// - Annäherungen Mond-Planet, Mond-Deep-Sky und Planet-heller-Stern
// - Planetenkonjunktionen
// - Gute Merkursichtbarkeit
// - Planetenparaden
// - Sternbildwechsel der Planeten
// - Sternbedeckungen durch den Mond
// - Meteorstrom-Maxima
// - Gute Überflüge des Favoriten-Satelliten
// - Zusammengeführte Monatsereignisliste für Übersicht, SQL-Export und iCal
// -------------------------------------------------------------------------
// Grenzwerte fuer Sternkarte und Objektanzeige
// -------------------------------------------------------------------------
@@ -1435,8 +1460,13 @@ foreach ($moonPhaseEvents as $phaseEvent) {
continue;
}
$phaseLabel = trim((string) ($phaseEvent['label'] ?? ''));
if ($phaseLabel === 'Erstes Viertel' || $phaseLabel === 'Letztes Viertel') {
$phaseLabel = 'Mond ' . $phaseLabel;
}
$monthEventList[] = [
'event' => (string) ($phaseEvent['label'] ?? ''),
'event' => $phaseLabel,
'date' => (string) ($phaseEvent['local_date'] ?? ''),
'time' => (string) ($phaseEvent['local_time'] ?? ''),
'local_iso' => (string) ($phaseEvent['local_iso'] ?? ''),
@@ -1642,11 +1672,7 @@ foreach ($jupiterMoonSideEvents as $jupiterMoonSideEvent) {
continue;
}
$durationLabel = trim((string) ($jupiterMoonSideEvent['duration_label'] ?? ''));
$eventLabel = trim((string) ($jupiterMoonSideEvent['label'] ?? 'Alle 4 Jupitermonde auf einer Seite von Jupiter'));
if ($durationLabel !== '') {
$eventLabel .= ' (' . $durationLabel . ')';
}
$monthEventList[] = [
'event' => $eventLabel,
@@ -1768,8 +1794,21 @@ foreach ($planetConstellationChangeEvents as $changeEvent) {
continue;
}
$planetLabel = trim((string) ($changeEvent['planet_label'] ?? 'Planet'));
$fromConstellationName = trim((string) ($changeEvent['from_constellation_name'] ?? ''));
$toConstellationName = trim((string) ($changeEvent['to_constellation_name'] ?? ''));
$changeLabel = (string) ($changeEvent['label'] ?? 'Planet wechselt Sternbild');
if ($fromConstellationName !== '' && $toConstellationName !== '') {
$changeLabel = sprintf(
'%s wechselt vom Sternbild %s in das Sternbild %s',
$planetLabel,
$fromConstellationName,
$toConstellationName
);
}
$monthEventList[] = [
'event' => (string) ($changeEvent['label'] ?? 'Planet wechselt Sternbild'),
'event' => $changeLabel,
'date' => (string) ($changeEvent['local_date'] ?? ''),
'time' => (string) ($changeEvent['local_time'] ?? ''),
'local_iso' => (string) ($changeEvent['local_iso'] ?? ''),