From bb9b89b3e08a393344eb4f144c94f8116f14affd Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 21 Jan 2022 10:18:28 +0100 Subject: [PATCH] Aggiunta copia clipboard + link modificato x prod --- GWMS.UI/Components/CopyToClipboard.razor | 58 ++++++++++++++++++++++++ GWMS.UI/Pages/UserAdmin.razor | 1 + GWMS.UI/Pages/_Host.cshtml | 1 + GWMS.UI/appsettings.Production.json | 2 +- GWMS.UI/appsettings.json | 2 +- GWMS.UI/wwwroot/lib/CBCopy.js | 10 ++++ 6 files changed, 72 insertions(+), 2 deletions(-) create mode 100644 GWMS.UI/Components/CopyToClipboard.razor create mode 100644 GWMS.UI/wwwroot/lib/CBCopy.js diff --git a/GWMS.UI/Components/CopyToClipboard.razor b/GWMS.UI/Components/CopyToClipboard.razor new file mode 100644 index 0000000..62c389a --- /dev/null +++ b/GWMS.UI/Components/CopyToClipboard.razor @@ -0,0 +1,58 @@ +@using System +@inject IJSRuntime JSRuntime + +
+ @if (ShowText) + { + + } + else + { + + } +
+ +
+
+ +@code { + + /// + /// Metodi per copia verso clipboard: + /// link: + /// - https://chrissainty.com/copy-to-clipboard-in-blazor/ + /// - https://www.daveabrock.com/2021/02/18/copy-to-clipboard-markdown-editor/ + /// - https://www.meziantou.net/ + /// + + [Parameter] + public string Text { get; set; } + + [Parameter] + public bool ShowText { get; set; } = true; + + protected string btnStyle = "btn-primary"; + protected bool copyDone = false; + + private async Task CopyTextToClipboard() + { + // cambio colore.. + btnStyle = "btn-success"; + copyDone = true; + await JSRuntime.InvokeVoidAsync("clipboardCopy.copyText", Text); + await Task.Delay(1100); + // fix cambio colore.. + btnStyle = "btn-primary"; + copyDone = false; + await Task.Delay(10); + } +} \ No newline at end of file diff --git a/GWMS.UI/Pages/UserAdmin.razor b/GWMS.UI/Pages/UserAdmin.razor index 03aa1e3..4d6ef7a 100644 --- a/GWMS.UI/Pages/UserAdmin.razor +++ b/GWMS.UI/Pages/UserAdmin.razor @@ -98,6 +98,7 @@ { } + diff --git a/GWMS.UI/Pages/_Host.cshtml b/GWMS.UI/Pages/_Host.cshtml index d4a07e6..b5760cc 100644 --- a/GWMS.UI/Pages/_Host.cshtml +++ b/GWMS.UI/Pages/_Host.cshtml @@ -70,5 +70,6 @@ + \ No newline at end of file diff --git a/GWMS.UI/appsettings.Production.json b/GWMS.UI/appsettings.Production.json index ab2ac2c..6f50518 100644 --- a/GWMS.UI/appsettings.Production.json +++ b/GWMS.UI/appsettings.Production.json @@ -21,5 +21,5 @@ "ZCodeUrl": "https://qrcode.steamware.net/", "BaseUrl": "https://gwms.egalware.com/", "BaseAppPath": "/pizzaferri/", - "jumpRedir": "~/../../" + "jumpRedir": "~/../" } \ No newline at end of file diff --git a/GWMS.UI/appsettings.json b/GWMS.UI/appsettings.json index 4519c12..683b813 100644 --- a/GWMS.UI/appsettings.json +++ b/GWMS.UI/appsettings.json @@ -37,7 +37,7 @@ "ZCodeUrl": "https://qrcode.steamware.net/", "ChartWaitDelay": 10, "BaseUrl": "https://localhost:44339/", - "BaseAppPath": "/pizzaferri/", + "BaseAppPath": "", "jumpRedir": "~/../../", "logo": "img/LogoPizzaferri.jpg", "ReloadParamTimer": 15000, diff --git a/GWMS.UI/wwwroot/lib/CBCopy.js b/GWMS.UI/wwwroot/lib/CBCopy.js new file mode 100644 index 0000000..23ced1c --- /dev/null +++ b/GWMS.UI/wwwroot/lib/CBCopy.js @@ -0,0 +1,10 @@ +window.clipboardCopy = { + copyText: function (text) { + navigator.clipboard.writeText(text).then(function () { + //alert("Copiato in clipboard!"); + }) + .catch(function (error) { + alert(error); + }); + } +}; \ No newline at end of file