Files
FrontOffice/src/FrontOffice.Main/Pages/Auth/Verify.razor

81 lines
3.6 KiB
Plaintext
Raw Normal View History

2025-09-28 03:49:17 +03:30
@attribute [Route(RouteConstants.Auth.Verify)]
2025-09-28 03:24:54 +03:30
<PageTitle>تأیید رمز پویا</PageTitle>
2025-09-28 05:36:45 +03:30
<MudStack AlignItems="AlignItems.Center">
2025-09-28 03:24:54 +03:30
<MudCard Class="pa-6" Style="max-width:420px;width:100%;">
<MudCardContent>
2025-09-28 08:38:13 +03:30
<MudText Typo="Typo.h5" Class="mb-1" Align="Align.Center">کد ارسال‌شده را وارد کنید</MudText>
2025-09-28 03:24:54 +03:30
@if (!string.IsNullOrWhiteSpace(_phoneNumber))
{
2025-09-28 08:38:13 +03:30
<MudText Typo="Typo.body2" Class="mb-4" Align="Align.Center">کد ارسال‌شده به @_phoneNumber را وارد نمایید.</MudText>
2025-09-28 03:24:54 +03:30
}
else
{
2025-09-28 08:38:13 +03:30
<MudText Typo="Typo.body2" Class="mb-4" Align="Align.Center">کد پیامک شده را وارد نمایید.</MudText>
2025-09-28 03:24:54 +03:30
}
2025-09-28 05:36:45 +03:30
<MudForm @ref="_form" Model="_request" Validation="@(_requestValidator.ValidateValue)">
<MudTextField @bind-Value="_request.Code"
For="@(() => _request.Code)"
2025-09-28 03:24:54 +03:30
Label="رمز پویا"
InputType="InputType.Text"
Variant="Variant.Outlined"
Immediate="true"
Required="true"
RequiredError="وارد کردن رمز پویا الزامی است."
2025-09-28 08:38:13 +03:30
HelperText="کد ۵ یا ۶ رقمی"
2025-09-28 03:24:54 +03:30
Class="mb-2"
MaxLength="6" />
2025-09-28 08:38:13 +03:30
<MudText Typo="Typo.caption" Align="Align.Center" Class="mb-1">
تلاش‌های باقی‌مانده: @_attemptsLeft
2025-09-28 03:24:54 +03:30
</MudText>
2025-09-28 08:38:13 +03:30
@if (_resendSeconds > 0)
2025-09-28 03:24:54 +03:30
{
2025-09-28 08:38:13 +03:30
<MudText Typo="Typo.caption" Align="Align.Center" Class="mb-1">
امکان ارسال مجدد تا @_resendSeconds ثانیه دیگر فعال می‌شود.
</MudText>
2025-09-28 03:24:54 +03:30
}
@if (!string.IsNullOrWhiteSpace(_infoMessage))
{
<MudAlert Severity="Severity.Success" Dense="true" Elevation="0" Class="mb-2">@_infoMessage</MudAlert>
}
2025-09-28 08:38:13 +03:30
@if (!string.IsNullOrWhiteSpace(_errorMessage))
{
<MudAlert Severity="Severity.Error" Dense="true" Elevation="0" Class="mb-2">@_errorMessage</MudAlert>
}
2025-09-28 03:24:54 +03:30
<MudStack Spacing="2" Class="mt-2">
<MudButton Variant="Variant.Filled"
Color="Color.Primary"
OnClick="VerifyOtpAsync"
Disabled="_isBusy || IsVerificationLocked"
2025-09-28 08:38:13 +03:30
Loading="_isBusy"
2025-09-28 03:24:54 +03:30
FullWidth="true">
2025-09-28 08:38:13 +03:30
تأیید و ادامه
2025-09-28 03:24:54 +03:30
</MudButton>
<MudButton Variant="Variant.Text"
Color="Color.Secondary"
Disabled="_isBusy"
OnClick="ChangePhoneAsync">
تغییر شماره
</MudButton>
</MudStack>
<MudDivider Class="my-2" />
2025-09-28 08:38:13 +03:30
<MudButton Variant="Variant.Text"
Color="Color.Primary"
Disabled="_isBusy || _resendSeconds > 0"
OnClick="ResendOtpAsync">
ارسال دوباره رمز
</MudButton>
2025-09-28 03:24:54 +03:30
</MudForm>
</MudCardContent>
</MudCard>
2025-09-28 05:36:45 +03:30
</MudStack>