Code fertig Kommentiert

Kommentare hinzugefügt wo sie noch gefehlt haben
This commit is contained in:
Erik
2024-08-28 13:53:39 +02:00
parent d9976ff520
commit f9d5053029
15 changed files with 142 additions and 106 deletions

View File

@@ -9,40 +9,44 @@ namespace bib_talk.Business
{
public class LoginManager
{
private LoginDatabase loginDatabase;
private LoginDatabase loginDatabase; // LoginDatabase Objekt initialisieren
// Konstruktor für den LoginManager
public LoginManager(Login loginWindow)
{
loginDatabase = new LoginDatabase(loginWindow);
loginDatabase = new LoginDatabase(loginWindow); // LoginDatabase Objekt deklarieren
}
// Methode zum User einloggen via LoginDatabase
public async void Login()
{
await loginDatabase.LoginServer();
}
public async Task LoginBots(string username, string password)
{
var loginData = new { Username = username, Password = password, Email = "", Birthday = "", IsOnline = "" };
string json = JsonConvert.SerializeObject(loginData);
// DEBUG METHODE
// Methode um Bots einzuloggen
//public async Task LoginBots(string username, string password)
//{
// var loginData = new { Username = username, Password = password, Email = "", Birthday = "", IsOnline = "" };
// string json = JsonConvert.SerializeObject(loginData);
using (var client = new HttpClient())
{
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync("http://daddypig.dns.navy:5114/api/users/login", content);
// using (var client = new HttpClient())
// {
// var content = new StringContent(json, Encoding.UTF8, "application/json");
// var response = await client.PostAsync("http://daddypig.dns.navy:5114/api/users/login", content);
if (response.IsSuccessStatusCode)
{
var responseContent = await response.Content.ReadAsStringAsync();
var responseData = JsonConvert.DeserializeObject<dynamic>(responseContent);
// if (response.IsSuccessStatusCode)
// {
// var responseContent = await response.Content.ReadAsStringAsync();
// var responseData = JsonConvert.DeserializeObject<dynamic>(responseContent);
}
else
{
var responseContent = await response.Content.ReadAsStringAsync();
MessageBox.Show($"Login failed: {responseContent}");
}
}
}
// }
// else
// {
// var responseContent = await response.Content.ReadAsStringAsync();
// MessageBox.Show($"Login failed: {responseContent}");
// }
// }
//}
}
}

View File

@@ -5,40 +5,41 @@ namespace bib_talk.Business
{
public class MainWindowManager
{
private MainWindowDatabase mwDatabase;
private string loggedinUser;
public MainWindowManager(MainWindow mainWindow)
{
mwDatabase = new MainWindowDatabase(mainWindow);
}
private MainWindowDatabase mwDatabase; //MainWindowDatabase initializeren
private string loggedInUser; // Feld um eingeloggten User zu speichern
// Konstruktor für MainWindowManager mit MainWindow und User Referenz
public MainWindowManager(MainWindow mainWindow, string user)
{
mwDatabase = new MainWindowDatabase(mainWindow, user);
loggedinUser = user;
loggedInUser = user;
}
// Methode zum Senden einer Nachricht via Datenbankmanager
public void SendMessage()
{
mwDatabase.SendMessage();
}
// Methode zum Laden der Nachrichten via Datenbankmanager
public void LoadMessages()
{
mwDatabase.LoadMessages();
}
// Methode zum Laden der Online Benutzer via Datenbankmanager
public void LoadOnlineUsers()
{
mwDatabase.LoadOnlineUsers();
}
// Methode zum Ausloggen des Users via Datenbankmanager
public void LogoutUser()
{
mwDatabase.LogoutUser();
}
// Methode zum Hochladen eines Profilbildes via Datenbankmanager
public async Task UploadProfileImage(string filePath)
{
await mwDatabase.UploadProfileImage(filePath);

View File

@@ -2,6 +2,7 @@
namespace bib_talk.Business
{
// Klasse um die Nachrichten in der Datenbank zu speichern
public class Message
{
public int Id { get; set; }

View File

@@ -2,6 +2,7 @@
namespace bib_talk.Business
{
// Klasse damit die Nachrichten in der App benutzt werden können
public class MessageDto
{
public string Username { get; set; }

View File

@@ -8,18 +8,23 @@ namespace bib_talk.Business
{
public class RegisterManager
{
private RegisterDatabase registerDatabase;
private RegisterDatabase registerDatabase; // RegisterDatabase Objekt initialisieren
// Konstruktor für den RegisterManager
public RegisterManager(RegisterWindow registerWindow)
{
registerDatabase = new RegisterDatabase(registerWindow);
registerDatabase = new RegisterDatabase(registerWindow); // RegisterDatabase Objekt deklarieren
}
// Methode um einen neuen Nutzer zu Registrieren via der RegisterDatabase
public async void RegisterServer()
{
await registerDatabase.RegisterServer();
}
// DEBUG METHODE
// Methode um einen Bot Nutzer auf der Datenbank anzulegen
public async void RegisterBots(string username, string password, string email, string birthday)
{
var newUser = new { Username = username, Password = password, Email = email, Birthday = birthday, IsOnline = "" };

View File

@@ -1,5 +1,8 @@
namespace bib_talk.Business
{
// User Klasse mit den Eigenschaften Id, Username, Password,
// Email, Birthday, IsOnline und ProfileImagePath
// um diese in der App zu Benutzen und in der Datenbank zu speichern
public class User
{
public int Id { get; set; }