|
|
|
@ -10,21 +10,21 @@ namespace Blazor.Pages.Admins
|
|
|
|
|
[Parameter]
|
|
|
|
|
public int Id { get; set; }
|
|
|
|
|
|
|
|
|
|
private AdministratorModel administratorModel = new();
|
|
|
|
|
private AdministratorModel? administratorModel;
|
|
|
|
|
|
|
|
|
|
[Inject]
|
|
|
|
|
public IDataService DataService { get; set; }
|
|
|
|
|
public required IDataService DataService { get; set; }
|
|
|
|
|
|
|
|
|
|
[Inject]
|
|
|
|
|
public NavigationManager NavigationManager { get; set; }
|
|
|
|
|
public required NavigationManager NavigationManager { get; set; }
|
|
|
|
|
|
|
|
|
|
[Inject]
|
|
|
|
|
public IWebHostEnvironment WebHostEnvironment { get; set; }
|
|
|
|
|
public required IWebHostEnvironment WebHostEnvironment { get; set; }
|
|
|
|
|
|
|
|
|
|
[Inject]
|
|
|
|
|
public ILogger<EditAdministrator> Logger { get; set; }
|
|
|
|
|
public required ILogger<EditAdministrator> Logger { get; set; }
|
|
|
|
|
|
|
|
|
|
private string OldAdminName { get; set; }
|
|
|
|
|
private string OldAdminName { get; set; } = "";
|
|
|
|
|
|
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
|
|
|
{
|
|
|
|
@ -41,33 +41,36 @@ namespace Blazor.Pages.Admins
|
|
|
|
|
|
|
|
|
|
private async Task HandleValidSubmit()
|
|
|
|
|
{
|
|
|
|
|
administratorModel.HashPassword(administratorModel.HashedPassword);
|
|
|
|
|
|
|
|
|
|
var formData = new List<KeyValuePair<string, string>>();
|
|
|
|
|
formData.Add(new KeyValuePair<string, string>("username", administratorModel.Username));
|
|
|
|
|
formData.Add(new KeyValuePair<string, string>("password", administratorModel.HashedPassword));
|
|
|
|
|
|
|
|
|
|
var formContent = new FormUrlEncodedContent(formData);
|
|
|
|
|
|
|
|
|
|
string apiUri = API.API_URL+"update/administrator/" + administratorModel.Id + "/" + API.TOKEN;
|
|
|
|
|
|
|
|
|
|
using (var httpClient = new HttpClient())
|
|
|
|
|
{
|
|
|
|
|
var response = await httpClient.PostAsync(apiUri, formContent);
|
|
|
|
|
|
|
|
|
|
if (response.IsSuccessStatusCode)
|
|
|
|
|
{
|
|
|
|
|
var responseBody = await response.Content.ReadAsStringAsync();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
var errorResponse = await response.Content.ReadAsStringAsync();
|
|
|
|
|
}
|
|
|
|
|
if (administratorModel != null)
|
|
|
|
|
{
|
|
|
|
|
administratorModel.HashPassword(administratorModel.HashedPassword);
|
|
|
|
|
|
|
|
|
|
var formData = new List<KeyValuePair<string, string>>();
|
|
|
|
|
formData.Add(new KeyValuePair<string, string>("username", administratorModel.Username));
|
|
|
|
|
formData.Add(new KeyValuePair<string, string>("password", administratorModel.HashedPassword));
|
|
|
|
|
|
|
|
|
|
var formContent = new FormUrlEncodedContent(formData);
|
|
|
|
|
|
|
|
|
|
string apiUri = API.API_URL + "update/administrator/" + administratorModel.Id + "/" + API.TOKEN;
|
|
|
|
|
|
|
|
|
|
using (var httpClient = new HttpClient())
|
|
|
|
|
{
|
|
|
|
|
var response = await httpClient.PostAsync(apiUri, formContent);
|
|
|
|
|
|
|
|
|
|
if (response.IsSuccessStatusCode)
|
|
|
|
|
{
|
|
|
|
|
var responseBody = await response.Content.ReadAsStringAsync();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
var errorResponse = await response.Content.ReadAsStringAsync();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Logger.LogInformation("Admin '{OldAdminModelName}' edited in '{NewAdminModelName}'", OldAdminName, administratorModel.Username);
|
|
|
|
|
|
|
|
|
|
NavigationManager.NavigateTo("administrators");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Logger.LogInformation("Admin '{OldAdminModelName}' edited in '{NewAdminModelName}'",OldAdminName,administratorModel.Username);
|
|
|
|
|
|
|
|
|
|
NavigationManager.NavigateTo("administrators");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|