Authenticate upon start of the application if no settings exist
This commit is contained in:
parent
6191d647f6
commit
db9c569ebc
4 changed files with 20 additions and 9 deletions
|
@ -21,7 +21,8 @@ namespace LANCommander.PlaynitePlugin
|
||||||
|
|
||||||
public LANCommanderClient(string baseUrl)
|
public LANCommanderClient(string baseUrl)
|
||||||
{
|
{
|
||||||
Client = new RestClient(baseUrl);
|
if (!String.IsNullOrWhiteSpace(baseUrl))
|
||||||
|
Client = new RestClient(baseUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
private T PostRequest<T>(string route, object body)
|
private T PostRequest<T>(string route, object body)
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
using LANCommander.PlaynitePlugin.Extensions;
|
using LANCommander.PlaynitePlugin.Extensions;
|
||||||
using LANCommander.SDK;
|
using LANCommander.SDK;
|
||||||
using Playnite.SDK;
|
using Playnite.SDK;
|
||||||
|
using Playnite.SDK.Events;
|
||||||
using Playnite.SDK.Models;
|
using Playnite.SDK.Models;
|
||||||
using Playnite.SDK.Plugins;
|
using Playnite.SDK.Plugins;
|
||||||
using System;
|
using System;
|
||||||
|
@ -41,6 +42,7 @@ namespace LANCommander.PlaynitePlugin
|
||||||
};
|
};
|
||||||
|
|
||||||
Settings = new LANCommanderSettingsViewModel(this);
|
Settings = new LANCommanderSettingsViewModel(this);
|
||||||
|
|
||||||
LANCommander = new LANCommanderClient(Settings.ServerAddress);
|
LANCommander = new LANCommanderClient(Settings.ServerAddress);
|
||||||
LANCommander.Token = new SDK.Models.AuthToken()
|
LANCommander.Token = new SDK.Models.AuthToken()
|
||||||
{
|
{
|
||||||
|
@ -51,11 +53,16 @@ namespace LANCommander.PlaynitePlugin
|
||||||
PowerShellRuntime = new PowerShellRuntime();
|
PowerShellRuntime = new PowerShellRuntime();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override void OnApplicationStarted(OnApplicationStartedEventArgs args)
|
||||||
|
{
|
||||||
|
ShowAuthenticationWindow();
|
||||||
|
}
|
||||||
|
|
||||||
public override IEnumerable<GameMetadata> GetGames(LibraryGetGamesArgs args)
|
public override IEnumerable<GameMetadata> GetGames(LibraryGetGamesArgs args)
|
||||||
{
|
{
|
||||||
var gameMetadata = new List<GameMetadata>();
|
var gameMetadata = new List<GameMetadata>();
|
||||||
|
|
||||||
if (!LANCommander.ValidateToken(LANCommander.Token))
|
if (LANCommander.Token != null && !LANCommander.ValidateToken(LANCommander.Token))
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -298,7 +305,7 @@ namespace LANCommander.PlaynitePlugin
|
||||||
window.Content = new Views.Authentication(this);
|
window.Content = new Views.Authentication(this);
|
||||||
window.DataContext = new ViewModels.Authentication()
|
window.DataContext = new ViewModels.Authentication()
|
||||||
{
|
{
|
||||||
ServerAddress = Settings.ServerAddress
|
ServerAddress = Settings?.ServerAddress
|
||||||
};
|
};
|
||||||
|
|
||||||
window.Owner = PlayniteApi.Dialogs.GetCurrentAppWindow();
|
window.Owner = PlayniteApi.Dialogs.GetCurrentAppWindow();
|
||||||
|
|
|
@ -26,11 +26,14 @@ namespace LANCommander.PlaynitePlugin
|
||||||
|
|
||||||
var settings = Plugin.LoadPluginSettings<LANCommanderSettingsViewModel>();
|
var settings = Plugin.LoadPluginSettings<LANCommanderSettingsViewModel>();
|
||||||
|
|
||||||
ServerAddress = settings.ServerAddress;
|
if (settings != null)
|
||||||
AccessToken = settings.AccessToken;
|
{
|
||||||
RefreshToken = settings.RefreshToken;
|
ServerAddress = settings.ServerAddress;
|
||||||
InstallDirectory = settings.InstallDirectory;
|
AccessToken = settings.AccessToken;
|
||||||
PlayerName = settings.PlayerName;
|
RefreshToken = settings.RefreshToken;
|
||||||
|
InstallDirectory = settings.InstallDirectory;
|
||||||
|
PlayerName = settings.PlayerName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void BeginEdit()
|
public void BeginEdit()
|
||||||
|
|
|
@ -54,7 +54,7 @@ namespace LANCommander.PlaynitePlugin.Views
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (Plugin.LANCommander == null)
|
if (Plugin.LANCommander == null || Plugin.LANCommander.Client == null)
|
||||||
Plugin.LANCommander = new LANCommanderClient(Context.ServerAddress);
|
Plugin.LANCommander = new LANCommanderClient(Context.ServerAddress);
|
||||||
else
|
else
|
||||||
Plugin.LANCommander.Client.BaseUrl = new Uri(Context.ServerAddress);
|
Plugin.LANCommander.Client.BaseUrl = new Uri(Context.ServerAddress);
|
||||||
|
|
Loading…
Add table
Reference in a new issue