# Voraussetzungen um das React Projekt zu bauen - Node 18 - PNPM # Veränderungen Datenbank ## Tabelle `egb_benutzer` - Neue Spalten `token` (Auth token): VarChar(36), Nullable, UNIQUE Constraint - Neue Spalten `tokenExpiry` (Auth token verfall): DateTime, Nullable - Neue Spalten `refreshToken` (Auth refresh token): VarChar(36), Nullable, UNIQUE Constraint - Neue Spalten `refreshExpiry` (Auth refresh token verfall): VarChar(36), DateTime - Abänderung der Spalte `zeitstempel`: Entfernen des `ON UPDATE` (da sonst die Mitgliedszeit beim Ändern der Daten sich ändert) - Abänderung der Spalte `benutzername`: Non-Nullable gemacht, UNIQUE Constraint - Abänderung der Spalte `email`: Non-Nullable gemacht, UNIQUE Constraint - Abänderung der Spalte `passwort`: Non-Nullable gemacht - Abänderung der Spalte `confirmationcode`: Default auf `NULL` gesetzt ## Tabelle `egb_gaestebuch` - Abänderung der Spalte `benutzer_id`: Non-Nullable gemacht - Abänderung der Spalte `beitrag`: Non-Nullable gemacht - Hinzufüge eines Foreign Key Constraints auf `benutzer_id` # Notwendige Anpassung für die Verzeichnisstruktur eines anderen Hosters ## HTACCESS ### `.htaccess` - RewriteBase anpassen ### `react/public/.htaccess` - RewriteBase anpassen - **WICHTIG:** React Projekt neu bauen damit die Datei an den korrekten Platz kopiert wird ## PHP ### `classes/Models/User.php` - Link in der Confirmation E-Mail ### `config/app.php` - Alle Pfade ## JS **WICHTIG:** Nach allen Änderungen muss das React Projekt neu gebaut werden ### `react/vite.config.ts` - `base` Pfad ### `react/src/i18n.ts` - `loadPath` Pfad ### `react/src/main.tsx` - `createRouter.basepath` Pfad ### `react/src/api/Api.ts` - `BASE` API Url ### Projekt bauen ``` cd react pnpm install pnpm build ```