4.8 KiB
Projektüberblick
Diese Datei beschreibt die Website grundsätzlich: Worum es geht, welche Bereiche es gibt und wie die wichtigsten Bausteine zusammenspielen.
Zweck der Website
SkyView & AstroTools ist eine Astronomie-Website des Astronomiemuseums der Sternwarte Sonneberg.
Die Seite verbindet:
- öffentliche Astronomie-Werkzeuge
- persönliche Benutzerfunktionen
- Import- und Auswerteprozesse für astronomische Daten
- Telegram-Anbindung für Benachrichtigungen und Tests
Hauptbereiche
Die Website besteht im Kern aus vier Bereichen.
1. Öffentliche Astronomie-Seiten
Unter public/ liegen die eigentlichen Seiten der Website.
Typische Inhalte sind:
- Mond und Mondphasen
- Planetensichtbarkeit
- Sternenhimmel
- Meteorströme
- Finsternisse und Bedeckungen
- Geocron und Geocron 3D
- Vorhersage-Seiten wie Monats- und Wochenvorhersage
- Spezialseiten wie die T-CrB-Lichtkurve
Diese Seiten nutzen in der Regel den gemeinsamen Header und Footer:
2. Benutzerkonten
Die Seite besitzt eigene Benutzerkonten mit Login.
Wichtige Konto-Seiten:
Benutzer können dort unter anderem:
- ihr Konto verwalten
- Telegram verbinden
- Standorte verwalten
- Favoriten pflegen
3. Rechtesystem
Die Seite hat ein Rollen- und Seitenrechtesystem.
Aktuell gibt es:
useradminmaster
Wichtig:
adminundmasterhaben Vollzugriff auf die geschützten Seiten- normale Benutzer erhalten gezielte Seitenfreigaben
- das Header-Menü passt sich an die Seitenrechte an
Die Details dazu stehen in:
4. Hintergrundprozesse und Datenimporte
Die Website arbeitet nicht nur mit statischen Seiten, sondern auch mit Import- und Cron-Skripten.
Wichtige Skripte liegen unter:
Beispiele:
scripts/import/import_tcrb.phpImportiert AAVSO-WebObs-Daten für T CrBscripts/import/import_celestrak_active.phpImportiert Satellitendatenscripts/telegram/telegram_cron.phpFührt Telegram-Aufgaben zeitgesteuert aus
T CrB
Ein aktueller Spezialbereich ist T CrB.
Dazu gehören:
- Import der AAVSO-Daten
- Speicherung in der Datenbank
- grafische Darstellung als Lichtkurve
- Telegram-Benachrichtigung zum letzten
V-Wert
Wichtige Dateien:
Telegram
Die Website besitzt eine Telegram-Anbindung.
Damit können Benutzer:
- ihr Konto mit Telegram verknüpfen
- später Nachrichten oder Diagramme erhalten
Wichtige Bausteine:
public/settings.phppublic/telegram/connect.phppublic/telegram/webhook.phppublic/telegram/broadcast_test.phpscripts/telegram/telegram_cron.php
Datenfluss grob
Vereinfacht sieht der Ablauf so aus:
- Import-Skripte holen astronomische Daten aus externen Quellen
- Die Daten werden in der Datenbank gespeichert
- Seiten unter
public/lesen diese Daten aus und stellen sie dar - Cron-Skripte können daraus Telegram-Nachrichten oder andere Folgeaktionen erzeugen
Technischer Aufbau
Die Website ist aktuell klassisch in PHP aufgebaut.
Wichtige Verzeichnisse:
public/Webroot und PHP-Seitenconfig/Konfigurationen und SQLscripts/Import- und Cron-Skriptedocs/Projektdokumentation
Für neue Arbeit an der Seite wichtig
Wenn neue Funktionen dazukommen, sollte man immer an diese Punkte denken:
- braucht die Seite einen Eintrag im Rechtesystem
- soll sie im Header-Menü erscheinen
- braucht sie Datenimport oder Cron
- braucht sie Telegram-Anbindung
- braucht sie Dokumentation in
docs
Schreibweise
Für deutsche Ausgabetexte in UI, Meldungen, Dialogen und Dokumentation sollen normale Umlaute und ß verwendet werden.
Für technische Bezeichner soll das nicht automatisch gelten, insbesondere bei:
- Dateinamen
- URLs und Pfaden
- Funktionsnamen
- Variablennamen
- Datenbankspalten, Keys und anderen Schnittstellen