feature: implement persistent login username and remember-me checkbox
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m42s
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m42s
Problem: Login form showed remembered username from localStorage, but didn't restore the 'remember me' checkbox state. Users had to re-check the box on each login attempt, defeating the purpose of the remember feature. Solution: 1. AdminLoginForm: Add isRememberChecked field and RememberedCheckboxKey constant 2. OnInitializedAsync: Restore both username AND checkbox state from localStorage 3. admin-session.js bindLoginForm: Restore checkbox.checked from localStorage 4. admin-session.js submit handler: Save checkbox state alongside username Result: Complete round-trip persistence - when user checks 'remember me' and logs in, both username and checkbox state persist until explicitly cleared. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -40,18 +40,23 @@
|
||||
|
||||
@code {
|
||||
private string rememberedUsername = "";
|
||||
private bool isRememberChecked = false;
|
||||
private bool isReady;
|
||||
private const string RememberedUsernameKey = "admin-remembered-username";
|
||||
private const string RememberedCheckboxKey = "admin-remember-checkbox";
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
rememberedUsername = await LocalStorageService.GetItemAsStringAsync(RememberedUsernameKey) ?? "";
|
||||
var checkboxValue = await LocalStorageService.GetItemAsStringAsync(RememberedCheckboxKey) ?? "false";
|
||||
isRememberChecked = checkboxValue == "true" && !string.IsNullOrEmpty(rememberedUsername);
|
||||
}
|
||||
catch
|
||||
{
|
||||
rememberedUsername = "";
|
||||
isRememberChecked = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user