diff --git a/RMWPFInterfaceLibrary/Api/APIHelper.cs b/RMWPFInterfaceLibrary/Api/APIHelper.cs index 1c64c51..6bb6c68 100644 --- a/RMWPFInterfaceLibrary/Api/APIHelper.cs +++ b/RMWPFInterfaceLibrary/Api/APIHelper.cs @@ -62,6 +62,11 @@ namespace RMWPFInterfaceLibrary.Api } } + public void LogOffUser() + { + _apiClient.DefaultRequestHeaders.Clear(); + } + public async Task GetLogedInUserInfo(string token) { _apiClient.DefaultRequestHeaders.Clear(); diff --git a/RMWPFInterfaceLibrary/Api/IAPIHelper.cs b/RMWPFInterfaceLibrary/Api/IAPIHelper.cs index c4c9819..42a5f55 100644 --- a/RMWPFInterfaceLibrary/Api/IAPIHelper.cs +++ b/RMWPFInterfaceLibrary/Api/IAPIHelper.cs @@ -7,6 +7,7 @@ namespace RMWPFInterfaceLibrary.Api public interface IAPIHelper { HttpClient ApiClient { get; } + void LogOffUser(); Task Authenticate(string username, string password); Task GetLogedInUserInfo(string token); } diff --git a/RMWPFInterfaceLibrary/Models/ILoggedInUserModel.cs b/RMWPFInterfaceLibrary/Models/ILoggedInUserModel.cs index aac84b7..429040c 100644 --- a/RMWPFInterfaceLibrary/Models/ILoggedInUserModel.cs +++ b/RMWPFInterfaceLibrary/Models/ILoggedInUserModel.cs @@ -10,6 +10,6 @@ namespace RMWPFInterfaceLibrary.Models string Id { get; set; } string LastName { get; set; } string Token { get; set; } - void LogOffUser(); + void ResetUserModel(); } } \ No newline at end of file diff --git a/RMWPFInterfaceLibrary/Models/LoggedInUserModel.cs b/RMWPFInterfaceLibrary/Models/LoggedInUserModel.cs index 0addb10..fa3f2c1 100644 --- a/RMWPFInterfaceLibrary/Models/LoggedInUserModel.cs +++ b/RMWPFInterfaceLibrary/Models/LoggedInUserModel.cs @@ -15,7 +15,7 @@ namespace RMWPFInterfaceLibrary.Models public string EmailAddress { get; set; } public DateTime CreatedDate { get; set; } - public void LogOffUser() + public void ResetUserModel() { Token = ""; Id = ""; diff --git a/RMWPFUserInterface/ViewModels/ShellViewModel.cs b/RMWPFUserInterface/ViewModels/ShellViewModel.cs index 073f09e..a7066c1 100644 --- a/RMWPFUserInterface/ViewModels/ShellViewModel.cs +++ b/RMWPFUserInterface/ViewModels/ShellViewModel.cs @@ -5,6 +5,7 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using Caliburn.Micro; +using RMWPFInterfaceLibrary.Api; using RMWPFInterfaceLibrary.Models; using RMWPFUserInterface.EventModels; @@ -15,12 +16,15 @@ namespace RMWPFUserInterface.ViewModels private IEventAggregator _events; private SalesViewModel _salesVM; private ILoggedInUserModel _user; + private IAPIHelper _apiHelper; public ShellViewModel(IEventAggregator events, SalesViewModel salesVM, - SimpleContainer container, ILoggedInUserModel user) + SimpleContainer container, ILoggedInUserModel user, IAPIHelper apiHelper) { _salesVM = salesVM; _events = events; _user = user; + _apiHelper = apiHelper; + _events.SubscribeOnUIThread(this); @@ -48,7 +52,8 @@ namespace RMWPFUserInterface.ViewModels public void LogOut() { - _user.LogOffUser(); + _user.ResetUserModel(); + _apiHelper.LogOffUser(); NotifyOfPropertyChange(() => IsLoggedIn); ActivateItemAsync(IoC.Get());