From bd0053cc03060ec1bfa667b8d86b50f8ed828733 Mon Sep 17 00:00:00 2001 From: Schedel Pascal Date: Tue, 9 Jul 2024 10:23:05 +0200 Subject: [PATCH] some fixes --- OwnChar/Api/ICharacterManager.cs | 1 + OwnChar/Data/DataManagerAction.cs | 6 +++--- OwnChar/Data/Providers/JsonFile/JsonFileDataProvider.cs | 2 +- OwnChar/Manager/Modules/CharacterManager.cs | 7 +++++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/OwnChar/Api/ICharacterManager.cs b/OwnChar/Api/ICharacterManager.cs index 6b42fee..82b52ac 100644 --- a/OwnChar/Api/ICharacterManager.cs +++ b/OwnChar/Api/ICharacterManager.cs @@ -8,4 +8,5 @@ public interface ICharacterManager bool DeleteCharacter(Character? character); IQueryable? GetCharacters(Group? group); IQueryable? GetCharacters(UserProfile? profile); + UserProfile? GetOwner(Character? character); } \ No newline at end of file diff --git a/OwnChar/Data/DataManagerAction.cs b/OwnChar/Data/DataManagerAction.cs index bdf25e7..fe24c96 100644 --- a/OwnChar/Data/DataManagerAction.cs +++ b/OwnChar/Data/DataManagerAction.cs @@ -8,7 +8,7 @@ public class DataManagerAction(string id) { get { - if (BaseAction != null) + if (BaseAction is not null) return $"{BaseAction.ActionId}.{id}"; return id; } @@ -27,10 +27,10 @@ public class DataManagerAction(string id) if (a.ActionId == b.ActionId) return true; - if (a.BaseAction != null && a.BaseAction.ActionId == b.ActionId) + if (a.BaseAction is not null && a.BaseAction.ActionId == b.ActionId) return true; - if (b.BaseAction != null && a.ActionId == b.BaseAction.ActionId) + if (b.BaseAction is not null && a.ActionId == b.BaseAction.ActionId) return true; return false; diff --git a/OwnChar/Data/Providers/JsonFile/JsonFileDataProvider.cs b/OwnChar/Data/Providers/JsonFile/JsonFileDataProvider.cs index 3aa2fe1..fa33c35 100644 --- a/OwnChar/Data/Providers/JsonFile/JsonFileDataProvider.cs +++ b/OwnChar/Data/Providers/JsonFile/JsonFileDataProvider.cs @@ -159,7 +159,7 @@ public class JsonFileDataProvider : IDataProvider return false; } - public IQueryable? GetAll(OwnCharObject? context) where T : OwnCharObject + public IQueryable? GetAll() where T : OwnCharObject { var t = typeof(T); diff --git a/OwnChar/Manager/Modules/CharacterManager.cs b/OwnChar/Manager/Modules/CharacterManager.cs index 5300789..0811013 100644 --- a/OwnChar/Manager/Modules/CharacterManager.cs +++ b/OwnChar/Manager/Modules/CharacterManager.cs @@ -44,4 +44,11 @@ public class CharacterManager(OwnCharManager manager) : OwnCharManagerModule(man Manager.CheckLogin(); return Manager.DataManager.ExecuteAction(DataManagerActions.Delete, DataManagerActionType.Default, Manager.CurrentUser, character).HasSuccess; } + + public UserProfile? GetOwner(Character? character) + { + ArgumentNullException.ThrowIfNull(character, nameof(character)); + Manager.CheckLogin(); + return Manager.DataManager.ExecuteAction(DataManagerActions.Association.Owner, DataManagerActionType.Get, Manager.CurrentUser, character).Result as UserProfile; + } }