From 951283e0cae018be52a56c6047aa952b45ace24c Mon Sep 17 00:00:00 2001 From: Daniel Date: Sun, 5 Jul 2026 01:08:00 +1000 Subject: [PATCH] fix: Password reset page shows blank username --- public/de-AT/password_reset.html | 2 +- public/de/password_reset.html | 2 +- public/password_reset.html | 2 +- spec/PagesRouter.spec.js | 18 ++++++++++++++++++ 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/public/de-AT/password_reset.html b/public/de-AT/password_reset.html index 73cb1e3d52..b9705d37e4 100644 --- a/public/de-AT/password_reset.html +++ b/public/de-AT/password_reset.html @@ -20,7 +20,7 @@

{{appName}}

Reset Your Password

-

You can set a new Password for your account: {{username}}

+

You can set a new Password{{#username}} for your account: {{username}}{{/username}}


{{error}}

diff --git a/public/de/password_reset.html b/public/de/password_reset.html index 73cb1e3d52..b9705d37e4 100644 --- a/public/de/password_reset.html +++ b/public/de/password_reset.html @@ -20,7 +20,7 @@

{{appName}}

Reset Your Password

-

You can set a new Password for your account: {{username}}

+

You can set a new Password{{#username}} for your account: {{username}}{{/username}}


{{error}}

diff --git a/public/password_reset.html b/public/password_reset.html index 73cb1e3d52..b9705d37e4 100644 --- a/public/password_reset.html +++ b/public/password_reset.html @@ -20,7 +20,7 @@

{{appName}}

Reset Your Password

-

You can set a new Password for your account: {{username}}

+

You can set a new Password{{#username}} for your account: {{username}}{{/username}}


{{error}}

diff --git a/spec/PagesRouter.spec.js b/spec/PagesRouter.spec.js index 68dfb0b17b..948212fa71 100644 --- a/spec/PagesRouter.spec.js +++ b/spec/PagesRouter.spec.js @@ -309,6 +309,24 @@ describe('Pages Router', () => { expect(replacedContent.text).not.toContain('{{error}}'); }); + it('omits the username clause on the password reset page when no username is set', async () => { + await expectAsync(router.goToPage(req, pages.passwordReset)).toBeResolved(); + + const replacedContent = await pageResponse.calls.all()[0].returnValue; + expect(replacedContent.text).not.toContain('for your account:'); + expect(replacedContent.text).not.toContain('undefined'); + }); + + it('shows the username on the password reset page when a username is set', async () => { + req.params = { appId: config.appId }; + req.query.username = 'exampleUsername'; + + await expectAsync(router.passwordReset(req)).toBeResolved(); + + const replacedContent = await pageResponse.calls.all()[0].returnValue; + expect(replacedContent.text).toContain('for your account: exampleUsername'); + }); + it('fills placeholders from config object', async () => { config.pages.enableLocalization = false; config.pages.placeholders = {