...
This commit is contained in:
@@ -37,7 +37,8 @@
|
|||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
else{
|
else
|
||||||
|
{
|
||||||
<label for="user-name" class="block mb-2 text-slate-600 font-bold">
|
<label for="user-name" class="block mb-2 text-slate-600 font-bold">
|
||||||
جهت احراز کد ارسال شده را وارد کنید
|
جهت احراز کد ارسال شده را وارد کنید
|
||||||
</label>
|
</label>
|
||||||
@@ -68,6 +69,25 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<Button Color="ButtonColor.Link"
|
||||||
|
Disabled="@isButtonDisabled"
|
||||||
|
@onclick="async () =>
|
||||||
|
{
|
||||||
|
await verificationService.ReSendCode(ID);
|
||||||
|
await verifiTimer();
|
||||||
|
}"
|
||||||
|
Style="padding: 6px 16px; font-size: 14px; background-color: #f8f9fa; transition: all 0.3s ease; display: inline-flex; align-items: center; gap: 8px; margin-top: 10px;margin-bottom: -10px;">
|
||||||
|
|
||||||
|
<span>ارسال مجدد</span>
|
||||||
|
|
||||||
|
@if (countdown > 0)
|
||||||
|
{
|
||||||
|
<span style="color: #dc3545; font-weight: bold;">(@countdown)</span>
|
||||||
|
}
|
||||||
|
</Button>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -83,6 +103,9 @@
|
|||||||
private string code1, code2, code3, code4;
|
private string code1, code2, code3, code4;
|
||||||
private ElementReference input1, input2, input3, input4;
|
private ElementReference input1, input2, input3, input4;
|
||||||
string validateStyleUser = "";
|
string validateStyleUser = "";
|
||||||
|
private bool isButtonDisabled = true;
|
||||||
|
private int countdown = 60;
|
||||||
|
private System.Timers.Timer? timer;
|
||||||
}
|
}
|
||||||
@functions {
|
@functions {
|
||||||
async Task Login()
|
async Task Login()
|
||||||
@@ -95,7 +118,7 @@
|
|||||||
Mobile = Username.Replace("-", "")
|
Mobile = Username.Replace("-", "")
|
||||||
});
|
});
|
||||||
validateStyleUser = "";
|
validateStyleUser = "";
|
||||||
|
await verifiTimer();
|
||||||
visible = false;
|
visible = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -104,6 +127,33 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
async Task verifiTimer()
|
||||||
|
{
|
||||||
|
//----------
|
||||||
|
isButtonDisabled = true;
|
||||||
|
countdown = 60;
|
||||||
|
timer = new System.Timers.Timer(1000); // هر 1 ثانیه
|
||||||
|
timer.Elapsed += OnTimerElapsed;
|
||||||
|
timer.AutoReset = true;
|
||||||
|
timer.Enabled = true;
|
||||||
|
//----------
|
||||||
|
}
|
||||||
|
private void OnTimerElapsed(object? sender, System.Timers.ElapsedEventArgs e)
|
||||||
|
{
|
||||||
|
if (countdown > 0)
|
||||||
|
{
|
||||||
|
countdown--;
|
||||||
|
InvokeAsync(StateHasChanged); // بروزرسانی UI
|
||||||
|
}
|
||||||
|
|
||||||
|
if (countdown == 0)
|
||||||
|
{
|
||||||
|
isButtonDisabled = false;
|
||||||
|
timer?.Stop();
|
||||||
|
timer?.Dispose();
|
||||||
|
StateHasChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
async Task ver()
|
async Task ver()
|
||||||
{
|
{
|
||||||
visible = true;
|
visible = true;
|
||||||
|
Reference in New Issue
Block a user