feat(auth): password reset, forgot username, and admin user management for local accounts
- Add /forgot-password and /forgot-username page routes and templates
- Update login page label to "Username or Email" (both already accepted by backend)
- Add "Forgot password?" and "Forgot username?" links to login page
- Add POST /api/auth/forgot-username endpoint + send_forgot_username_email() utility
- Add admin endpoints: PATCH /local/{id}, POST /local/{id}/send-password-reset, POST /local/{id}/set-password
- Update admin_users.html with Edit, Password, and Reset action buttons + modals
- Add 23 tests; fix code review issues (import style, display_name clearing behaviour)
- Update docs/API.md and docs/UserGuide.md
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
@@ -35,8 +35,9 @@
|
||||
<form method="POST" action="/auth" class="space-y-4">
|
||||
<input type="hidden" name="csrf_token" value="{{ csrf_token | default('', true) }}">
|
||||
<div>
|
||||
<label for="username" class="block text-sm font-medium text-gray-700">Username</label>
|
||||
<label for="username" class="block text-sm font-medium text-gray-700">Username or Email</label>
|
||||
<input type="text" id="username" name="username" required
|
||||
autocomplete="username"
|
||||
class="mt-1 block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring focus:ring-blue-500 focus:ring-opacity-50">
|
||||
</div>
|
||||
|
||||
@@ -50,9 +51,13 @@
|
||||
Sign in
|
||||
</button>
|
||||
</form>
|
||||
<div class="mt-3 text-center">
|
||||
<div class="mt-3 text-center space-x-3">
|
||||
<a href="/forgot-password" class="text-sm text-blue-600 hover:text-blue-500">
|
||||
Forgot your password?
|
||||
Forgot password?
|
||||
</a>
|
||||
<span class="text-gray-300" aria-hidden="true">|</span>
|
||||
<a href="/forgot-username" class="text-sm text-blue-600 hover:text-blue-500">
|
||||
Forgot username?
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user