Vollständige Next.js 16 Webanwendung als Logbuch für die Sternwarte Welzheim. 4 Kuppeln (West/Ost/Süd/Pluto), BEO-basierte Authentifizierung mit erzwungenem Passwort-Wechsel beim Erstlogin, MySQL-Backend, Docker-Deployment. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
62 lines
1.2 KiB
TypeScript
62 lines
1.2 KiB
TypeScript
export type Kuppel = 'West' | 'Ost' | 'Süd' | 'Pluto';
|
|
export type ArtFuehrung =
|
|
| 'Reguläre Führung'
|
|
| 'Sonderführung'
|
|
| 'BEO-Sitzung'
|
|
| 'Sonnenführung'
|
|
| 'Technischer Dienst'
|
|
| 'Beobachtung'
|
|
| 'Tag der offenen Tür'
|
|
| 'Sonstiges';
|
|
|
|
export const KUPPELN: Kuppel[] = ['West', 'Ost', 'Süd', 'Pluto'];
|
|
export const ARTEN: ArtFuehrung[] = [
|
|
'Reguläre Führung',
|
|
'Sonderführung',
|
|
'BEO-Sitzung',
|
|
'Sonnenführung',
|
|
'Technischer Dienst',
|
|
'Beobachtung',
|
|
'Tag der offenen Tür',
|
|
'Sonstiges',
|
|
];
|
|
|
|
export interface BeoOption {
|
|
ID: number;
|
|
Kuerzel: string;
|
|
Name: string;
|
|
}
|
|
|
|
export interface ObjektOption {
|
|
ID: number;
|
|
Name: string;
|
|
}
|
|
|
|
export interface SelectedObjekt {
|
|
ID: number | null;
|
|
Name: string;
|
|
}
|
|
|
|
export interface Wetter {
|
|
temp: number;
|
|
feuchte: number;
|
|
druck: number;
|
|
}
|
|
|
|
export interface LogbuchEintrag {
|
|
ID: number;
|
|
Kuppel: Kuppel;
|
|
ArtFuehrung: ArtFuehrung;
|
|
Beginn: string;
|
|
Ende: string;
|
|
Besucher: number;
|
|
Bemerkungen: string | null;
|
|
WetterTemp: number | null;
|
|
WetterFeuchte: number | null;
|
|
WetterDruck: number | null;
|
|
created_by: number | null;
|
|
created_at: string;
|
|
BEOs: string;
|
|
Objekte: string;
|
|
}
|