reset validation
This commit is contained in:
		| @ -5,24 +5,28 @@ | ||||
| @inject IStringLocalizer<Index> Localizer | ||||
| @inject IStringLocalizer<SharedResources> SharedLocalizer | ||||
|  | ||||
| <div class="container"> | ||||
|     <div class="form-group"> | ||||
|         <label for="Username" class="control-label">@SharedLocalizer["Username"] </label> | ||||
|         <input type="text" class="form-control" placeholder="Username" @bind="@_username" readonly id="Username" /> | ||||
| <form @ref="form" class="@(validated ? "was-validated" : "needs-validation")" novalidate> | ||||
|     <div class="container"> | ||||
|         <div class="form-group"> | ||||
|             <label for="Username" class="control-label">@SharedLocalizer["Username"] </label> | ||||
|             <input type="text" class="form-control" placeholder="Username" @bind="@_username" readonly id="Username" /> | ||||
|         </div> | ||||
|         <div class="form-group"> | ||||
|             <label for="Password" class="control-label">@SharedLocalizer["Password"] </label> | ||||
|             <input type="password" class="form-control" placeholder="Password" @bind="@_password" id="Password" required /> | ||||
|         </div> | ||||
|         <div class="form-group"> | ||||
|             <label for="Confirm" class="control-label">@Localizer["Password.Confirm"] </label> | ||||
|             <input type="password" class="form-control" placeholder="Password" @bind="@_confirm" id="Confirm" required /> | ||||
|         </div> | ||||
|         <button type="button" class="btn btn-primary" @onclick="Reset">@Localizer["Password.Reset"]</button> | ||||
|         <button type="button" class="btn btn-secondary" @onclick="Cancel">@SharedLocalizer["Cancel"]</button> | ||||
|     </div> | ||||
|     <div class="form-group"> | ||||
|         <label for="Password" class="control-label">@SharedLocalizer["Password"] </label> | ||||
|         <input type="password" class="form-control" placeholder="Password" @bind="@_password" id="Password" /> | ||||
|     </div> | ||||
|     <div class="form-group"> | ||||
|         <label for="Confirm" class="control-label">@Localizer["Password.Confirm"] </label> | ||||
|         <input type="password" class="form-control" placeholder="Password" @bind="@_confirm" id="Confirm" /> | ||||
|     </div> | ||||
|     <button type="button" class="btn btn-primary" @onclick="Reset">@Localizer["Password.Reset"]</button> | ||||
|     <button type="button" class="btn btn-secondary" @onclick="Cancel">@SharedLocalizer["Cancel"]</button> | ||||
| </div> | ||||
| </form> | ||||
|  | ||||
| @code { | ||||
|     private ElementReference form; | ||||
|     private bool validated = false; | ||||
|     private string _username = string.Empty; | ||||
|     private string _password = string.Empty; | ||||
|     private string _confirm = string.Empty; | ||||
| @ -43,45 +47,54 @@ | ||||
|  | ||||
|     private async Task Reset() | ||||
|     { | ||||
|         try | ||||
|         validated = true; | ||||
|         var interop = new Interop(JSRuntime); | ||||
|         if (await interop.FormValid(form)) | ||||
|         { | ||||
|             if (_username != string.Empty && _password != string.Empty && _confirm != string.Empty) | ||||
|             try | ||||
|             { | ||||
|                 if (_password == _confirm) | ||||
|                 if (_username != string.Empty && _password != string.Empty && _confirm != string.Empty) | ||||
|                 { | ||||
|                     var user = new User | ||||
|                     if (_password == _confirm) | ||||
|                     { | ||||
|                         SiteId = PageState.Site.SiteId, | ||||
|                         Username = _username, | ||||
|                         Password = _password | ||||
|                     }; | ||||
|                     user = await UserService.ResetPasswordAsync(user, PageState.QueryString["token"]); | ||||
|                         var user = new User | ||||
|                         { | ||||
|                             SiteId = PageState.Site.SiteId, | ||||
|                             Username = _username, | ||||
|                             Password = _password | ||||
|                         }; | ||||
|                         user = await UserService.ResetPasswordAsync(user, PageState.QueryString["token"]); | ||||
|  | ||||
|                     if (user != null) | ||||
|                     { | ||||
|                         await logger.LogInformation("User Password Reset {Username}", _username); | ||||
|                         NavigationManager.NavigateTo(NavigateUrl("login")); | ||||
|                         if (user != null) | ||||
|                         { | ||||
|                             await logger.LogInformation("User Password Reset {Username}", _username); | ||||
|                             NavigationManager.NavigateTo(NavigateUrl("login")); | ||||
|                         } | ||||
|                         else | ||||
|                         { | ||||
|                             await logger.LogError("Error Resetting User Password {Username}", _username); | ||||
|                             AddModuleMessage(Localizer["Error.Password.ResetInfo"], MessageType.Error); | ||||
|                         } | ||||
|                     } | ||||
|                     else | ||||
|                     { | ||||
|                         await logger.LogError("Error Resetting User Password {Username}", _username); | ||||
|                         AddModuleMessage(Localizer["Error.Password.ResetInfo"], MessageType.Error); | ||||
|                         AddModuleMessage(Localizer["Message.Password.NoMatch"], MessageType.Warning); | ||||
|                     } | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     AddModuleMessage(Localizer["Message.Password.NoMatch"], MessageType.Warning); | ||||
|                     AddModuleMessage(Localizer["Message.Required.UserInfo"], MessageType.Warning); | ||||
|                 } | ||||
|             } | ||||
|             else | ||||
|             catch (Exception ex) | ||||
|             { | ||||
|                 AddModuleMessage(Localizer["Message.Required.UserInfo"], MessageType.Warning); | ||||
|                 await logger.LogError(ex, "Error Resetting User Password {Username} {Error}", _username, ex.Message); | ||||
|                 AddModuleMessage(Localizer["Error.Password.Reset"], MessageType.Error); | ||||
|             } | ||||
|         } | ||||
|         catch (Exception ex) | ||||
|         else | ||||
|         { | ||||
|             await logger.LogError(ex, "Error Resetting User Password {Username} {Error}", _username, ex.Message); | ||||
|             AddModuleMessage(Localizer["Error.Password.Reset"], MessageType.Error); | ||||
|             AddModuleMessage(SharedLocalizer["Message.InfoRequired"], MessageType.Warning); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Grayson Walker
					Grayson Walker