summary refs log tree commit diff
path: root/testFrontend/SafeNSound.Frontend/Pages
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2025-06-01 04:40:09 +0200
committerRory& <root@rory.gay>2025-06-01 04:40:09 +0200
commita22c00fcefa10a99505c05393106fb3a655de243 (patch)
tree417757b1e5aa9f44702ed963569e0edf6209043d /testFrontend/SafeNSound.Frontend/Pages
parentAdd some tests (diff)
downloadnodejs-final-assignment-a22c00fcefa10a99505c05393106fb3a655de243.tar.xz
Add register with validation
Diffstat (limited to 'testFrontend/SafeNSound.Frontend/Pages')
-rw-r--r--testFrontend/SafeNSound.Frontend/Pages/Auth.razor68
-rw-r--r--testFrontend/SafeNSound.Frontend/Pages/Counter.razor19
2 files changed, 68 insertions, 19 deletions
diff --git a/testFrontend/SafeNSound.Frontend/Pages/Auth.razor b/testFrontend/SafeNSound.Frontend/Pages/Auth.razor
new file mode 100644

index 0000000..533fc01 --- /dev/null +++ b/testFrontend/SafeNSound.Frontend/Pages/Auth.razor
@@ -0,0 +1,68 @@ +@page "/Auth" + + +<h1>Auth</h1> + +<span>Username (L?, R): </span> +<FancyTextBox @bind-Value="@Username"/><br/> +<span>Email (L? R): </span> +<FancyTextBox @bind-Value="@Email"/><br/> +<span>Password (L, R): </span> +<FancyTextBox @bind-Value="@Password"/><br/> +<span>Type (R): </span> +<FancyTextBox @bind-Value="@UserType"/><span> (one of user|monitor|admin)</span><br/> +<LinkButton OnClick="Login">Login</LinkButton> +<LinkButton OnClick="Register">Register</LinkButton> +<br/><br/> + +@if (Exception != null) { + <div class="alert alert-danger"> + <strong>Error:</strong><br/> + <pre> + @Exception + </pre> + </div> +} + +@if (Result != null) { + <div class="alert alert-success"> + <strong>Result:</strong><br/> + <pre> + @Result.ToJson(indent: true) + </pre> + </div> +} + +@code { + private string Username { get; set; } = ""; + private string Email { get; set; } = ""; + private string Password { get; set; } = ""; + private string UserType { get; set; } = ""; + + private Exception? Exception { get; set; } + private object? Result { get; set; } + + private async Task Register() { + Result = null; + Exception = null; + try { + Result = await Authentication.Register(new() { + Username = Username, + Password = Password, + Email = Email, + UserType = UserType + }); + } + catch (Exception ex) { + Exception = ex; + } + finally { + StateHasChanged(); + } + } + + private Task Login() { + throw new NotImplementedException(); + } + +} \ No newline at end of file diff --git a/testFrontend/SafeNSound.Frontend/Pages/Counter.razor b/testFrontend/SafeNSound.Frontend/Pages/Counter.razor deleted file mode 100644
index 372905f..0000000 --- a/testFrontend/SafeNSound.Frontend/Pages/Counter.razor +++ /dev/null
@@ -1,19 +0,0 @@ -@page "/counter" - -<PageTitle>Counter</PageTitle> - -<h1>Counter</h1> - -<p role="status">Current count: @currentCount</p> - -<button class="btn btn-primary" @onclick="IncrementCount">Click me</button> - -@code { - private int currentCount = 0; - - private void IncrementCount() - { - currentCount++; - } - -} \ No newline at end of file