Skip to content

Commit 1fd4493

Browse files
committed
Added authorization to the admin panel's registration action so administrators can register users even when server‑side registration is disabled
1 parent dfafc74 commit 1fd4493

3 files changed

Lines changed: 14 additions & 6 deletions

File tree

gamevault/AssemblyInfo.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
//(used if a resource is not found in the page,
1212
// app, or any theme specific resource dictionaries)
1313
)]
14-
[assembly: AssemblyVersion("1.17.1.0")]
14+
[assembly: AssemblyVersion("1.17.2.0")]
1515
[assembly: AssemblyCopyright("© Phalcode™. All Rights Reserved.")]
1616
#if DEBUG
1717
[assembly: XmlnsDefinition("debug-mode", "Namespace")]

gamevault/Helper/LoginManager.cs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ public string GetServerLoginResponseMessage()
7272
public void SwitchToOfflineMode()
7373
{
7474
MainWindowViewModel.Instance.OnlineState = System.Windows.Visibility.Visible;
75-
m_User = null;
75+
m_User = null;
7676
}
7777
public UserProfile GetUserProfile()
7878
{
@@ -385,12 +385,20 @@ public void PhalcodeLogout()
385385
}
386386

387387

388-
public async Task<LoginState> Register(LoginUser user)
388+
public async Task<LoginState> Register(LoginUser user, bool useOAuth = false)
389389
{
390390
try
391391
{
392392
string userObject = JsonSerializer.Serialize(new User { Username = user.Username, Password = user.Password, EMail = user.EMail, FirstName = user.FirstName, LastName = user.LastName, BirthDate = user.BirthDate });
393-
string newUser = await WebHelper.BasePostAsync($"{user.ServerUrl}/api/auth/basic/register", userObject);
393+
string newUser = "";
394+
if (useOAuth)
395+
{
396+
newUser = await WebHelper.PostAsync($"{user.ServerUrl}/api/auth/basic/register", userObject);
397+
}
398+
else
399+
{
400+
newUser = await WebHelper.BasePostAsync($"{user.ServerUrl}/api/auth/basic/register", userObject);
401+
}
394402
User newUserObject = JsonSerializer.Deserialize<User>(newUser);
395403
if (newUserObject!.Activated != true)
396404
{

gamevault/UserControls/SettingsComponents/RegistrationUserControl.xaml.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,11 +107,11 @@ private async void RegisterNewUser_Click(object sender, RoutedEventArgs e)
107107
try
108108
{
109109
ValidateSignUpData();
110-
LoginState state = await LoginManager.Instance.Register(ViewModel.SignupUser);
110+
LoginState state = await LoginManager.Instance.Register(ViewModel.SignupUser, true);
111111
if (state != LoginState.Error)
112112
{
113113
MainWindowViewModel.Instance.ClosePopup();
114-
if(MainWindowViewModel.Instance.ActiveControl.GetType() == typeof(AdminConsoleUserControl))
114+
if (MainWindowViewModel.Instance.ActiveControl.GetType() == typeof(AdminConsoleUserControl))
115115
{
116116
await MainWindowViewModel.Instance.AdminConsole.InitUserList();
117117
}

0 commit comments

Comments
 (0)