From 43824ce284486258a27dbccb1ffec7af9fd05c3d Mon Sep 17 00:00:00 2001 From: Sebastian Brenner Date: Fri, 7 Nov 2025 16:29:26 +0100 Subject: [PATCH] add db class --- src/{ => client}/App.tsx | 0 src/{ => client}/components/Card.tsx | 0 .../components/ForgotPassword.tsx | 0 src/{ => client}/components/SignIn.tsx | 34 +++----- src/{ => client}/frontend.tsx | 0 src/client/serverApi.ts | 31 +++++++ src/index.html | 2 +- src/index.ts | 38 ++++----- src/interfaces.ts | 5 ++ src/server/db.ts | 85 +++++++++++++++++++ 10 files changed, 153 insertions(+), 42 deletions(-) rename src/{ => client}/App.tsx (100%) rename src/{ => client}/components/Card.tsx (100%) rename src/{ => client}/components/ForgotPassword.tsx (100%) rename src/{ => client}/components/SignIn.tsx (86%) rename src/{ => client}/frontend.tsx (100%) create mode 100644 src/client/serverApi.ts create mode 100644 src/interfaces.ts create mode 100644 src/server/db.ts diff --git a/src/App.tsx b/src/client/App.tsx similarity index 100% rename from src/App.tsx rename to src/client/App.tsx diff --git a/src/components/Card.tsx b/src/client/components/Card.tsx similarity index 100% rename from src/components/Card.tsx rename to src/client/components/Card.tsx diff --git a/src/components/ForgotPassword.tsx b/src/client/components/ForgotPassword.tsx similarity index 100% rename from src/components/ForgotPassword.tsx rename to src/client/components/ForgotPassword.tsx diff --git a/src/components/SignIn.tsx b/src/client/components/SignIn.tsx similarity index 86% rename from src/components/SignIn.tsx rename to src/client/components/SignIn.tsx index 7abc2e4..7277869 100644 --- a/src/components/SignIn.tsx +++ b/src/client/components/SignIn.tsx @@ -1,9 +1,7 @@ import * as React from 'react'; import Box from '@mui/material/Box'; import Button from '@mui/material/Button'; -import Checkbox from '@mui/material/Checkbox'; import CssBaseline from '@mui/material/CssBaseline'; -import FormControlLabel from '@mui/material/FormControlLabel'; import Divider from '@mui/material/Divider'; import FormLabel from '@mui/material/FormLabel'; import FormControl from '@mui/material/FormControl'; @@ -19,10 +17,8 @@ import Card from './Card'; const SignIn = () => { const [email, setEmail] = React.useState(''); const [emailError, setEmailError] = React.useState(false); - const [emailErrorMessage, setEmailErrorMessage] = React.useState(''); const [group, setGroup] = React.useState(''); const [groupError, setGroupError] = React.useState(false); - const [groupErrorMessage, setGroupErrorMessage] = React.useState(''); const [open, setOpen] = React.useState(false); const theme = useTheme(); @@ -36,26 +32,26 @@ const SignIn = () => { }; const handleSubmit = (event: React.FormEvent) => { - if (emailError || groupError) { + if ((emailError || email === '')) { event.preventDefault(); + setEmailError(true); return; } - console.log({ - email: email, - groupcode: group, - }); + if ((groupError || group === '')) { + event.preventDefault(); + setGroupError(true); + return; + } }; const validateEmail = (): boolean => { let isValid = true; if (email !== '' && !/\S+@\S+\.\S+/.test(email)) { - setEmailError(true); - setEmailErrorMessage('Bitte gib eine gültige E-Mail Adresse ein.'); + setEmailError(true);; isValid = false; } else { setEmailError(false); - setEmailErrorMessage(''); } return isValid; }; @@ -63,12 +59,10 @@ const SignIn = () => { const validateGroup = (): boolean => { let isValid = true; if (group !== '' && !/\S+@\S+\.\S+/.test(email)) { - setEmailError(true); - setEmailErrorMessage('Bitte gib eine gültige E-Mail Adresse ein.'); + setGroupError(true); isValid = false; } else { - setEmailError(false); - setEmailErrorMessage(''); + setGroupError(false); } return isValid; }; @@ -119,7 +113,7 @@ const SignIn = () => { { {'Gruppencode'} { color={groupError ? 'error' : 'primary'} /> - } - label="Anmeldedaten speichern" /> -