diff --git a/NftFaucetRadzen/Models/NewFileModel.cs b/NftFaucetRadzen/Models/NewFileModel.cs new file mode 100644 index 0000000..5167c8a --- /dev/null +++ b/NftFaucetRadzen/Models/NewFileModel.cs @@ -0,0 +1,10 @@ +namespace NftFaucetRadzen.Models; + +public class NewFileModel +{ + public string Name { get; set; } + public string Description { get; set; } + public string FileData { get; set; } + public string FileName { get; set; } + public long? FileSize { get; set; } +} diff --git a/NftFaucetRadzen/Pages/CreateTokenPage.razor b/NftFaucetRadzen/Pages/CreateTokenPage.razor index c43f3c3..9bc5289 100644 --- a/NftFaucetRadzen/Pages/CreateTokenPage.razor +++ b/NftFaucetRadzen/Pages/CreateTokenPage.razor @@ -2,5 +2,16 @@ Create token - +

Image

+ +

Name

+ +

Description

+ +
+
+ + +
+
diff --git a/NftFaucetRadzen/Pages/CreateTokenPage.razor.cs b/NftFaucetRadzen/Pages/CreateTokenPage.razor.cs index 41b02c1..30bbbe4 100644 --- a/NftFaucetRadzen/Pages/CreateTokenPage.razor.cs +++ b/NftFaucetRadzen/Pages/CreateTokenPage.razor.cs @@ -1,5 +1,6 @@ using Microsoft.JSInterop; using Microsoft.AspNetCore.Components; +using NftFaucetRadzen.Models; using Radzen; namespace NftFaucetRadzen.Pages; @@ -23,4 +24,35 @@ public partial class CreateTokenPage [Inject] protected NotificationService NotificationService { get; set; } + + private NewFileModel Model { get; set; } = new NewFileModel(); + private bool ModelIsValid => IsValid(); + + private void OnSavePressed() + { + if (!IsValid()) + return; + + DialogService.Close(Model); + } + + private bool IsValid() + { + if (string.IsNullOrWhiteSpace(Model.Name)) + return false; + + if (string.IsNullOrWhiteSpace(Model.Description)) + return false; + + if (string.IsNullOrEmpty(Model.FileData)) + return false; + + if (string.IsNullOrEmpty(Model.FileName)) + return false; + + if (Model.FileSize is null or 0) + return false; + + return true; + } } diff --git a/NftFaucetRadzen/Pages/TokensPage.razor b/NftFaucetRadzen/Pages/TokensPage.razor index cae5892..e8b7662 100644 --- a/NftFaucetRadzen/Pages/TokensPage.razor +++ b/NftFaucetRadzen/Pages/TokensPage.razor @@ -6,7 +6,7 @@
+ Click="@OpenCreateTokenDialog" />
diff --git a/NftFaucetRadzen/Pages/TokensPage.razor.cs b/NftFaucetRadzen/Pages/TokensPage.razor.cs index 32d6527..49e4b43 100644 --- a/NftFaucetRadzen/Pages/TokensPage.razor.cs +++ b/NftFaucetRadzen/Pages/TokensPage.razor.cs @@ -68,4 +68,11 @@ public partial class TokensPage : BasicComponent }, }, }; + + private async Task OpenCreateTokenDialog() + { + await DialogService.OpenAsync("Create new token", + new Dictionary(), + new DialogOptions() { Width = "700px", Height = "570px", Resizable = true, Draggable = true }); + } }