diff --git a/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor b/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor
index b312176..dff4e57 100644
--- a/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor
+++ b/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor
@@ -1,30 +1,65 @@
-
-
- Template
- @if (listValuesFiles != null && listValuesFiles.Count > 0)
- {
-
- @foreach (var val in listValuesFiles)
- {
-
- }
-
- }
- else
- {
-
- }
-
-
-@foreach (var graph in getGraphicParams())
+}
+@*@foreach (var graph in getGraphicParams())
{
@foreach (var graphParam in graph.Value)
{
@@ -49,12 +84,13 @@
}
}
-}
+}*@
+
-
+
doCancel()">
Cancel
-
\ No newline at end of file
+
diff --git a/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs b/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs
index 2ee4204..8af040b 100644
--- a/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs
+++ b/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs
@@ -1,5 +1,4 @@
using Microsoft.AspNetCore.Components;
-using Microsoft.AspNetCore.Identity;
using Newtonsoft.Json;
using WebDoorCreator.Data.DbModels;
using WebDoorCreator.UI.Data;
@@ -23,21 +22,51 @@ namespace WebDoorCreator.UI.Components.Hardware
#region Public Methods
- public Dictionary>> getGraphicParams()
+ public void setupCurrValues()
{
- var deserialized = JsonConvert.DeserializeObject>>>(DoorOpInst.JsoncConfigVal!);
+ //currVal = new Dictionary();
+ if (!string.IsNullOrEmpty(DoorOpInst.JsoncActVal))
+ {
+ var deserialized = JsonConvert.DeserializeObject>(DoorOpInst.JsoncActVal!);
+ if (deserialized != null)
+ {
+ currVal = deserialized;
+ }
+ }
+ }
+
+ public void setupGraphicParams()
+ {
+ var deserialized = JsonConvert.DeserializeObject>>(DoorOpInst.JsoncConfigVal!);
if (deserialized != null)
{
graphicParams = deserialized;
}
- return graphicParams;
}
#endregion Public Methods
#region Protected Properties
- protected string _folderName { get; set; } = "";
+ //public Dictionary>> getGraphicParams()
+ //{
+ // var deserialized = JsonConvert.DeserializeObject>>>(DoorOpInst.JsoncConfigVal!);
+ // if (deserialized != null)
+ // {
+ // graphicParams = deserialized;
+ // }
+ // return graphicParams;
+ //}
+ protected string _folderName
+ {
+ get => currVal != null ? currVal["folder"] : "";
+ set => currVal["folder"] = value;
+ }
+
+ ///
+ /// Array dati
+ ///
+ protected Dictionary currVal { get; set; } = null!;
protected string folderName
{
@@ -52,7 +81,13 @@ namespace WebDoorCreator.UI.Components.Hardware
}
}
- protected Dictionary>> graphicParams { get; set; } = null!;
+ protected string templateName
+ {
+ get => currVal != null ? currVal["template"] : "";
+ set => currVal["template"] = value;
+ }
+
+ protected Dictionary> graphicParams { get; set; } = null!;
protected List? listValuesFiles { get; set; } = null!;
protected List? listValuesFname { get; set; } = null!;
@@ -67,9 +102,44 @@ namespace WebDoorCreator.UI.Components.Hardware
#region Protected Methods
+ protected bool isCombo(string pKey)
+ {
+ bool answ = false;
+ if (graphicParams.ContainsKey(pKey))
+ {
+ answ = graphicParams[pKey].Count > 1;
+ }
+ return answ;
+ }
+
+ protected List comboSet(string pKey)
+ {
+ List answ = new List();
+ if (graphicParams.ContainsKey(pKey))
+ {
+ answ = graphicParams[pKey].ToList();
+ }
+ return answ;
+ }
+
+
+ protected async Task doSave()
+ {
+ // ri-serializzo i graphics parameters...
+ string serVal = JsonConvert.SerializeObject(currVal);
+ DoorOpInst.JsoncActVal = serVal;
+ // salvo!
+ await WDCService.DoorOpUpdate(DoorOpInst);
+ }
+
+ protected async Task doCancel()
+ {
+ await FullReloadData(true);
+ }
+
protected override async Task OnParametersSetAsync()
{
- await ReloadData(true);
+ await FullReloadData(true);
}
protected string translate(string lemma)
@@ -81,10 +151,18 @@ namespace WebDoorCreator.UI.Components.Hardware
return answ;
}
+
+
#endregion Protected Methods
#region Private Methods
+ private async Task FullReloadData(bool isFirst)
+ {
+ setupCurrValues();
+ setupGraphicParams();
+ await ReloadData(isFirst);
+ }
private async Task ReloadData(bool isFirst)
{
var tempListVal = await WDCService.ListValuesGetAll(HwCode, "Folder");
@@ -107,15 +185,6 @@ namespace WebDoorCreator.UI.Components.Hardware
}
}
- protected async Task doSave()
- {
- // ri-serializzo i graphics parameters...
- string serVal = JsonConvert.SerializeObject(graphicParams);
- DoorOpInst.JsoncActVal = serVal;
- // salvo!
- await WDCService.DoorOpUpdate(DoorOpInst);
- }
-
#endregion Private Methods
}
}
\ No newline at end of file
diff --git a/WebDoorCreator.UI/Data/WDCVocabularyService.cs b/WebDoorCreator.UI/Data/WDCVocabularyService.cs
index fca3140..0988903 100644
--- a/WebDoorCreator.UI/Data/WDCVocabularyService.cs
+++ b/WebDoorCreator.UI/Data/WDCVocabularyService.cs
@@ -73,7 +73,7 @@ namespace WebDoorCreator.UI.Data
public string Traduci(string lingua, string lemma)
{
- string answ = $"[{lemma}]";
+ string answ = lemma;
if (VocabularyLemmas != null && VocabularyLemmas.ContainsKey(lingua))
{