9 Commits

Author SHA1 Message Date
Torsten Schulz (local)
83d7484006 Füge Clean Code Refactoring für das YourChat-Projekt hinzu
- Erstelle die Datei `CLEAN_CODE_REFACTORING.md`, die die Ziele und Prinzipien des Clean Code Refactorings beschreibt.
- Implementiere neue Klassen wie `UserRepository`, `WebSocketMessageHandler`, `MessageValidator`, `ConfigurationManager` und `ChatUserClean`, um die Lesbarkeit, Wartbarkeit und Testbarkeit des Codes zu verbessern.
- Füge Methoden zur Fehlerbehandlung, zur Verwendung von Konstanten und zur Anwendung des Factory Patterns hinzu.
- Aktualisiere die `CMakeLists.txt`, um die neuen Quellcodedateien einzuschließen.
- Optimiere die `ChatRoom`- und `ChatUser`-Klassen, um die neuen Strukturen und Prinzipien zu integrieren.
- Füge einen Migrationsleitfaden und Metriken zur Bewertung der Codequalität hinzu.
2025-09-06 00:06:58 +02:00
Torsten Schulz (local)
b394b5d8a1 Füge SSLServer-Klasse hinzu und verbessere SSL/TLS-Unterstützung
- Integriere die `SSLServer`-Klasse zur Handhabung von SSL/TLS-Verbindungen.
- Aktualisiere `main.cpp`, um die SSL-Server-Instanz zu erstellen und zu starten, wenn SSL aktiviert ist.
- Modifiziere die `handleWebSocketMessage`-Methode in `ssl_server.cpp`, um die Benutzerverwaltung zu optimieren.
- Ergänze die `generateToken`-Methode in `base.cpp`, um Token für Benutzer zu generieren.
- Aktualisiere die Header-Dateien, um neue Methoden und Klassen zu berücksichtigen.
2025-09-04 12:21:52 +02:00
Torsten Schulz (local)
d619d70a76 Füge Unterstützung für SSL/TLS in die Konfiguration und das Build-System ein
- Integriere die libwebsockets-Bibliothek für SSL/TLS WebSocket-Unterstützung in `CMakeLists.txt`.
- Aktualisiere `chatconfig.json`, um SSL-Optionen wie `ssl_enabled`, `ssl_cert_path` und `ssl_key_path` hinzuzufügen.
- Ergänze das `deploy.sh`-Skript um einen Schritt zur optionalen Einrichtung von SSL/TLS.
- Modifiziere `update_config.sh`, um die SSL-Konfiguration in die Servereinstellungen zu integrieren.
- Implementiere eine Überprüfung in `main.cpp`, um den SSL-Status zu prüfen und entsprechende Meldungen auszugeben.
2025-09-04 12:05:22 +02:00
Torsten Schulz (local)
7338f1a740 Füge Unterstützung für Würfelspiele hinzu und verbessere Debugging-Optionen
- Implementiere neue Funktionen in der ChatRoom-Klasse für das Starten, Rollen und Beenden von Würfelspielen.
- Füge eine Option zur Aktivierung von Debug-Logging in CMake hinzu, um die Entwicklung zu erleichtern.
- Aktualisiere die ChatUser-Klasse, um die Interaktion mit dem Würfelspiel zu ermöglichen.
- Verbessere die Socket-Verwaltung im Server, um WebSocket-Verbindungen zu unterstützen und die Handhabung von Anfragen zu optimieren.
- Aktualisiere die Konfiguration, um die neue Funktionalität zu unterstützen und die Benutzererfahrung zu verbessern.
2025-08-16 22:43:08 +02:00
Torsten Schulz (local)
864d86aa09 Refactor chat system: Introduce ChatRoom and ChatUser classes
- Created ChatRoom class to manage chat room functionalities, including user management, message handling, and game mechanics.
- Developed ChatUser class to represent individual users, handling user-specific actions and interactions within chat rooms.
- Implemented a Config class for loading configuration settings from a JSON file.
- Established a Server class to manage connections, handle requests, and facilitate communication between users and chat rooms.
- Introduced a Database class for database interactions, utilizing PostgreSQL for user and room data management.
- Added utility functions in the Base class for JSON handling and socket communication.
- Created Object classes for Room and User to encapsulate their properties and behaviors.
- Updated main function to initialize server and load chat rooms from configuration.
2025-08-11 16:07:15 +02:00
Torsten Schulz (local)
6ecdbda9de Refactor chat room implementation
- Renamed Room class to ChatRoom and updated all references accordingly.
- Removed the old room.cpp and room.h files.
- Updated CMakeLists.txt to include chat_room.cpp instead of room.cpp.
- Modified ChatUser class to use shared_ptr<ChatRoom> instead of shared_ptr<Room>.
- Updated Server class to create instances of ChatRoom instead of Room.
- Removed User class and its associated files, integrating its functionality into ChatUser.
- Ensured all relevant includes and dependencies are updated to reflect the new class structure.
2025-08-11 15:03:11 +02:00
Torsten Schulz (local)
b81f2de10f Refactor project structure: replace User class with ChatUser, integrate Database class, and update CMake configuration for new files 2025-08-11 14:48:45 +02:00
Torsten Schulz
f44d780537 Update CMake configuration and refactor code to use smart pointers for memory management 2025-08-11 11:15:54 +02:00
Torsten Schulz
ba6b788075 CMake instead of qmake 2020-08-07 10:18:51 +02:00