2025-02-25 22:42:41 +03:00
|
|
|
using System;
|
|
|
|
using Avalonia.Controls;
|
|
|
|
using Avalonia.Interactivity;
|
|
|
|
using LauncherGUI.ViewModels;
|
|
|
|
|
|
|
|
namespace LauncherGUI.Views;
|
|
|
|
using Plombir;
|
|
|
|
|
|
|
|
public partial class SessionManagmentWindow : Window
|
|
|
|
{
|
|
|
|
private MainWindowViewModel _mainWindowVM;
|
|
|
|
public SessionManagmentWindow(MainWindowViewModel mainWindowVM)
|
|
|
|
{
|
|
|
|
InitializeComponent();
|
|
|
|
_mainWindowVM = mainWindowVM;
|
2025-02-26 16:04:13 +03:00
|
|
|
PopulateInfo();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void PopulateInfo()
|
|
|
|
{
|
2025-02-25 22:42:41 +03:00
|
|
|
inputNickname.Text = _mainWindowVM.Usernick; // setting default nickname.
|
|
|
|
currentNickname.Text = _mainWindowVM.Usernick;
|
|
|
|
loginMethod.Text = _mainWindowVM.LoginMethod;
|
2025-02-26 16:04:13 +03:00
|
|
|
currentUuid.Text = _mainWindowVM.UUID;
|
2025-02-25 22:42:41 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
private void OnSaveButtonClick(object sender, RoutedEventArgs e)
|
|
|
|
{
|
|
|
|
if (sender is not Button button) return;
|
|
|
|
|
|
|
|
_mainWindowVM.Usernick = inputNickname.Text;
|
2025-02-26 17:04:42 +03:00
|
|
|
_mainWindowVM.LoginMethod = "offline"; // Swapping to offline method
|
|
|
|
_mainWindowVM.UUID = "offline"; // Just to be sure
|
|
|
|
_mainWindowVM.AccsesToken = "offline";
|
|
|
|
|
2025-02-25 22:42:41 +03:00
|
|
|
Console.WriteLine($"Changing nickname to {inputNickname.Text}");
|
|
|
|
|
|
|
|
button.Content = "Saved!";
|
2025-02-26 16:04:13 +03:00
|
|
|
SaveSessionInfo();
|
|
|
|
PopulateInfo();
|
2025-02-25 22:42:41 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
async private void OnMicrosoftLoginClick(object sender, RoutedEventArgs e)
|
|
|
|
{
|
|
|
|
var session = await Utils.GetLicensedSession();
|
|
|
|
_mainWindowVM.LoginMethod = "microsoft";
|
|
|
|
_mainWindowVM.Usernick = session.Username;
|
|
|
|
_mainWindowVM.UUID = session.UUID;
|
|
|
|
_mainWindowVM.AccsesToken = session.AccessToken;
|
2025-02-26 16:04:13 +03:00
|
|
|
SaveSessionInfo();
|
|
|
|
PopulateInfo();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void SaveSessionInfo()
|
|
|
|
{
|
|
|
|
ConfigManager.WriteInConfig("nickname", _mainWindowVM.Usernick);
|
|
|
|
ConfigManager.WriteInConfig("login-method", _mainWindowVM.LoginMethod);
|
|
|
|
ConfigManager.WriteInConfig("uuid", _mainWindowVM.UUID);
|
|
|
|
ConfigManager.WriteInConfig("accsess-token", _mainWindowVM.AccsesToken);
|
2025-02-25 22:42:41 +03:00
|
|
|
}
|
|
|
|
}
|