151 lines
5.3 KiB
Plaintext
151 lines
5.3 KiB
Plaintext
@using Shared.DTOs
|
|
@page "/Verification/{ID:int}"
|
|
@inject HttpClient _hc
|
|
@inject NavigationManager nav
|
|
<PageTitle>احراز هویت</PageTitle>
|
|
<main>
|
|
|
|
<!-- tp-banner-area-start -->
|
|
<div class="signin-banner-area signin-banner-main-wrap d-flex align-items-center">
|
|
<div class="signin-banner-left-box signin-banner-bg p-relative">
|
|
<div class="signin-banner-bottom-shape">
|
|
<img src="img/login/login-shape-1.png" alt="">
|
|
</div>
|
|
<div class="signin-banner-left-wrap">
|
|
<div class="signin-banner-title-box mb-100">
|
|
<br />
|
|
<h4 class="signin-banner-title" style="color:black">
|
|
لطفا کد ارسالی را وارد نمایید
|
|
</h4>
|
|
</div>
|
|
<div class="signin-banner-img-box position-relative">
|
|
<div class="signin-banner-img signin-img-1 d-none d-md-block z-index-3">
|
|
<img src="img/login/login-2.png" alt="">
|
|
</div>
|
|
<div class="signin-banner-img signin-img-2 d-none d-md-block">
|
|
<img src="img/login/login-1.png" alt="">
|
|
</div>
|
|
<div class="signin-banner-img signin-img-3 d-none d-md-block z-index-5">
|
|
<img src="img/login/login-3.png" alt="">
|
|
</div>
|
|
<div class="signin-banner-img signin-img-4 d-none d-sm-block">
|
|
<img src="img/login/login-4.png" alt="">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="signin-banner-from d-flex justify-content-center align-items-center">
|
|
<div class="signin-banner-from-wrap">
|
|
<div class="signin-banner-title-box">
|
|
<h4 class="signin-banner-from-title">احراز هویت</h4>
|
|
</div>
|
|
|
|
<div class="signin-banner-from-box">
|
|
|
|
<EditForm EditContext="editContext" OnValidSubmit="SubmitVerificationCode">
|
|
|
|
|
|
<DataAnnotationsValidator />
|
|
<div class="postbox__comment-input mb-35">
|
|
<ValidationMessage For="()=>VerificationCodeModel.Code" />
|
|
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="postbox__comment-input mb-30">
|
|
<InputNumber @bind-Value="VerificationCodeModel.Code" id="Code" type="text" class="inputText" required="" />
|
|
<span class="floating-label">کد تائید</span>
|
|
</div>
|
|
</div>
|
|
<div class="signin-banner-from-btn mb-20">
|
|
<button type="submit" class="signin-btn">احراز</button>
|
|
</div>
|
|
</div>
|
|
|
|
</EditForm>
|
|
<div class="row">
|
|
<label style="color:red">
|
|
@Error
|
|
</label>
|
|
</div>
|
|
<div class="signin-banner-from-register">
|
|
<NavLink href="Register">کد ارسال نشد؟ <span>ارسال مجدد</span></NavLink>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- tp-banner-area-end -->
|
|
|
|
</main>
|
|
|
|
@code {
|
|
private EditContext? editContext;
|
|
private ValidationMessageStore? messageStore;
|
|
public string Error{ get; set; }
|
|
[Parameter]
|
|
public int ID { get; set; }
|
|
|
|
[SupplyParameterFromForm]
|
|
public VerificationCodeDto? VerificationCodeModel { get; set; } = new VerificationCodeDto();
|
|
protected override void OnInitialized()
|
|
{
|
|
editContext = new EditContext(VerificationCodeModel);
|
|
messageStore = new(editContext);
|
|
base.OnInitialized();
|
|
}
|
|
|
|
protected override async Task OnParametersSetAsync()
|
|
{
|
|
var request = await _hc.GetAsync($"Verification/GetVerification/{ID}");
|
|
if (request.IsSuccessStatusCode)
|
|
{
|
|
|
|
VerificationCodeModel = await request.Content.ReadFromJsonAsync<VerificationCodeDto>();
|
|
}
|
|
else
|
|
{
|
|
nav.NavigateTo($"/");
|
|
}
|
|
|
|
await base.OnParametersSetAsync();
|
|
}
|
|
}
|
|
@functions {
|
|
|
|
private async Task SubmitVerificationCode()
|
|
{
|
|
Error = "";
|
|
if (VerificationCodeModel.Code < 1000 || VerificationCodeModel.Code > 9000)
|
|
{
|
|
Error = "کد احراز صحیح نمی باشد";
|
|
}
|
|
else
|
|
{
|
|
var request = await _hc.PostAsJsonAsync($"Verification/Submit", VerificationCodeModel);
|
|
if (request.IsSuccessStatusCode)
|
|
{
|
|
var status = await request.Content.ReadFromJsonAsync<bool>();
|
|
if (status)
|
|
{
|
|
|
|
}
|
|
else
|
|
{
|
|
|
|
}
|
|
|
|
|
|
// nav.NavigateTo($"Verification/{res}");
|
|
}
|
|
else
|
|
{
|
|
nav.NavigateTo($"/");
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|