From e4e1fa6a4cf2f2f02606892289906574c0df28ec Mon Sep 17 00:00:00 2001 From: sbwalker Date: Mon, 4 Dec 2023 09:55:53 -0500 Subject: [PATCH] allow AddModuleMessage to support displaying the message at the bottom of the module instance --- Oqtane.Client/Modules/ModuleBase.cs | 7 +- Oqtane.Client/UI/ModuleInstance.razor | 92 ++++++++++++++++----------- 2 files changed, 60 insertions(+), 39 deletions(-) diff --git a/Oqtane.Client/Modules/ModuleBase.cs b/Oqtane.Client/Modules/ModuleBase.cs index 41812923..f5c0bef7 100644 --- a/Oqtane.Client/Modules/ModuleBase.cs +++ b/Oqtane.Client/Modules/ModuleBase.cs @@ -261,7 +261,12 @@ namespace Oqtane.Modules // UI methods public void AddModuleMessage(string message, MessageType type) { - ModuleInstance.AddModuleMessage(message, type); + AddModuleMessage(message, type, "top"); + } + + public void AddModuleMessage(string message, MessageType type, string position) + { + ModuleInstance.AddModuleMessage(message, type, position); } public void ClearModuleMessage() diff --git a/Oqtane.Client/UI/ModuleInstance.razor b/Oqtane.Client/UI/ModuleInstance.razor index f05ef9be..78ae6d5c 100644 --- a/Oqtane.Client/UI/ModuleInstance.razor +++ b/Oqtane.Client/UI/ModuleInstance.razor @@ -5,7 +5,10 @@ @if (CurrentException is null) { - + if (_messagePosition == "top") + { + + } @if (ModuleType != null) { @@ -14,6 +17,10 @@
} } + if (_messagePosition == "bottom") + { + + } } else { @@ -24,49 +31,58 @@ else } @code { - private string _message; - private string _error; - private MessageType _messageType; - private bool _progressIndicator = false; + private string _message; + private string _error; + private MessageType _messageType; + private string _messagePosition; + private bool _progressIndicator = false; - private Type ModuleType { get; set; } - private IDictionary ModuleParameters { get; set; } + private Type ModuleType { get; set; } + private IDictionary ModuleParameters { get; set; } - [CascadingParameter] - protected PageState PageState { get; set; } + [CascadingParameter] + protected PageState PageState { get; set; } - [CascadingParameter] - private Module ModuleState { get; set; } + [CascadingParameter] + private Module ModuleState { get; set; } - private ModuleMessage ModuleMessage { get; set; } + private ModuleMessage ModuleMessage { get; set; } - protected override void OnParametersSet() - { - _message = ""; - if (!string.IsNullOrEmpty(ModuleState.ModuleType)) - { - ModuleType = Type.GetType(ModuleState.ModuleType); - if (ModuleType != null) - { - ModuleParameters = new Dictionary { { "ModuleInstance", this } }; - return; - } - // module does not exist with typename specified - _message = string.Format(Localizer["Error.Module.InvalidName"], Utilities.GetTypeNameLastSegment(ModuleState.ModuleType, 0)); - _messageType = MessageType.Error; - } - else - { - _message = string.Format(Localizer["Error.Module.InvalidType"], ModuleState.ModuleDefinitionName); - _messageType = MessageType.Error; - } - } + protected override void OnParametersSet() + { + _message = ""; + if (!string.IsNullOrEmpty(ModuleState.ModuleType)) + { + ModuleType = Type.GetType(ModuleState.ModuleType); + if (ModuleType != null) + { + ModuleParameters = new Dictionary { { "ModuleInstance", this } }; + return; + } + // module does not exist with typename specified + _message = string.Format(Localizer["Error.Module.InvalidName"], Utilities.GetTypeNameLastSegment(ModuleState.ModuleType, 0)); + _messageType = MessageType.Error; + _messagePosition = "top"; + } + else + { + _message = string.Format(Localizer["Error.Module.InvalidType"], ModuleState.ModuleDefinitionName); + _messageType = MessageType.Error; + _messagePosition = "top"; + } + } - public void AddModuleMessage(string message, MessageType type) - { - _message = message; - _messageType = type; - _progressIndicator = false; + public void AddModuleMessage(string message, MessageType type) + { + AddModuleMessage(message, type, "top"); + } + + public void AddModuleMessage(string message, MessageType type, string position) + { + _message = message; + _messageType = type; + _messagePosition = position; + _progressIndicator = false; StateHasChanged(); }