Skip to content

Commit

Permalink
PS-753 keycloack - email - inserting dashboard URL in reset password …
Browse files Browse the repository at this point in the history
…renewal (#510)
  • Loading branch information
aynsix authored Jan 29, 2025
1 parent f595d7c commit b641a93
Show file tree
Hide file tree
Showing 9 changed files with 30 additions and 2 deletions.
2 changes: 2 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -897,6 +897,7 @@ services:
networks:
- internal
environment:
- DASHBOARD_CLIENT_URL
- KC_PROXY=edge
- KEYCLOAK_ADMIN
- KEYCLOAK_ADMIN_PASSWORD
Expand All @@ -923,6 +924,7 @@ services:
profiles:
- openid
environment:
- DASHBOARD_CLIENT_URL
- KC_PROXY=edge
- KEYCLOAK_ADMIN=${KEYCLOAK2_ADMIN}
- KEYCLOAK_ADMIN_PASSWORD=${KEYCLOAK2_ADMIN_PASSWORD}
Expand Down
2 changes: 0 additions & 2 deletions infra/docker/keycloak/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,3 @@ FROM quay.io/keycloak/keycloak:25.0.2 AS keycloak
ENV KC_SPI_THEME_DEFAULT=phrasea

COPY --from=builder /opt/keycloak /opt/keycloak


Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<#outputformat "plainText">
<#assign requiredActionsText><#if requiredActions??><#list requiredActions><#items as reqActionItem>${msg("requiredAction.${reqActionItem}")}<#sep>, </#sep></#items></#list></#if></#assign>
</#outputformat>

<#import "template.ftl" as layout>
<@layout.emailLayout>
${kcSanitize(msg("executeActionsBodyHtml",link, linkExpiration, realmName, requiredActionsText, linkExpirationFormatter(linkExpiration), properties["env.dashboardClientUrl"]))?no_esc}
</@layout.emailLayout>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<#import "template.ftl" as layout>
<@layout.emailLayout>
${kcSanitize(msg("passwordResetBodyHtml", link, linkExpiration, realmName, linkExpirationFormatter(linkExpiration), properties["env.dashboardClientUrl"]))?no_esc}
</@layout.emailLayout>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
passwordResetBody=Someone just requested to change your {2} account''s credentials. If this was you, click on the link below to reset them.\n\n{0}\n\nThis link and code will expire within {3}.\n\nIf you don''t want to reset your credentials, just ignore this message and nothing will be changed.\n\nOnce the password reset is complete, use this link to access modules of the solution: {4}
passwordResetBodyHtml=<p>Someone just requested to change your {2} account''s credentials. If this was you, click on the link below to reset them.</p><p><a href="{0}">Link to reset credentials</a></p><p>This link will expire within {3}.</p><p>If you don''t want to reset your credentials, just ignore this message and nothing will be changed.</p><p>Once the password reset is complete, use this link to access modules of the solution: <a href="{4}">{4}</a></p>
executeActionsBody=Your administrator has just requested that you update your {2} account by performing the following action(s): {3}. Click on the link below to start this process.\n\n{0}\n\nThis link will expire within {4}.\n\nIf you are unaware that your administrator has requested this, just ignore this message and nothing will be changed.\n\nUse this link to access modules of the solution: {5}
executeActionsBodyHtml=<p>Your administrator has just requested that you update your {2} account by performing the following action(s): {3}. Click on the link below to start this process.</p><p><a href="{0}">Link to account update</a></p><p>This link will expire within {4}.</p><p>If you are unaware that your administrator has requested this, just ignore this message and nothing will be changed.</p><p>Use this link to access modules of the solution: <a href="{5}">{5}</a></p></p>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
passwordResetBody=Quelqu''un vient de demander une réinitialisation de mot de passe pour votre compte {2}. Si vous êtes à l''origine de cette requête, veuillez cliquer sur le lien ci-dessous pour le mettre à jour.\n\n{0}\n\nCe lien expire dans {3}.\n\nSinon, veuillez ignorer ce message ; aucun changement ne sera effectué sur votre compte.\n\nUne fois votre mot de passe réinitialisé, utilisez ce lien pour accéder aux modules de la solution : {4}
passwordResetBodyHtml=<p>Quelqu''un vient de demander une réinitialisation de mot de passe pour votre compte {2}. Si vous êtes à l''origine de cette requête, veuillez cliquer sur le lien ci-dessous pour le mettre à jour.</p><p><a href="{0}">Lien pour réinitialiser votre mot de passe</a></p><p>Ce lien expire dans {3}.</p><p>Sinon, veuillez ignorer ce message ; aucun changement ne sera effectué sur votre compte.</p><p>Une fois votre mot de passe réinitialisé, utilisez ce lien pour accéder aux modules de la solution : <a href="{4}">{4}</a></p>
executeActionsBody=Votre administrateur vient de demander une mise à jour de votre compte {2} pour réaliser les actions suivantes : {3}. Veuillez cliquer sur le lien ci-dessous afin de commencer le processus.\n\n{0}\n\nCe lien expire dans {4}.\n\nSi vous n''êtes pas à l''origine de cette requête, veuillez ignorer ce message ; aucun changement ne sera effectué sur votre compte.\n\nutilisez ce lien pour accéder aux modules de la solution : {5}
executeActionsBodyHtml=<p>Votre administrateur vient de demander une mise à jour de votre compte {2} pour réaliser les actions suivantes : {3}. Veuillez cliquer sur le lien ci-dessous afin de commencer le processus.</p><p><a href="{0}">Lien pour la mise à jour du compte</a></p><p>Ce lien expire dans {4}.</p><p>Si vous n''êtes pas à l''origine de cette requête, veuillez ignorer ce message ; aucun changement ne sera effectué sur votre compte.</p><p>Utilisez ce lien pour accéder aux modules de la solution : <a href="{5}">{5}</a></p>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<#ftl output_format="plainText">
<#assign requiredActionsText><#if requiredActions??><#list requiredActions><#items as reqActionItem>${msg("requiredAction.${reqActionItem}")}<#sep>, </#items></#list><#else></#if></#assign>

${msg("executeActionsBody",link, linkExpiration, realmName, requiredActionsText, linkExpirationFormatter(linkExpiration), properties["env.dashboardClientUrl"])}
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<#ftl output_format="plainText">
${msg("passwordResetBody",link, linkExpiration, realmName, linkExpirationFormatter(linkExpiration), properties["env.dashboardClientUrl"])}
2 changes: 2 additions & 0 deletions infra/docker/keycloak/themes/phrasea/email/theme.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
parent=keycloak
import=common/keycloak

env.dashboardClientUrl=${env.DASHBOARD_CLIENT_URL}

0 comments on commit b641a93

Please sign in to comment.