new configuration version

This commit is contained in:
haburger 2025-07-09 15:57:16 +00:00
parent ed92f6738b
commit ec23310957
27 changed files with 483 additions and 589 deletions

View File

@ -44,7 +44,7 @@ spec:
podDisruptionBudget:
maxUnavailable: "50%"
git:
tag: "r-0a95034444af9c2e5b4a8c12cc3a0f444f6b0447"
tag: "r-25da499166053032321f08e80ed9ec3136c59cd1"
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/logrend"
credentials: "git-credentials"
podSecurity:

View File

@ -1,7 +1,6 @@
class ProvidePhoneNumber {
modal;
declineModal;
providePhoneNumberLaterButton;
phoneNumberInput;
agovInputPhoneNumberInput;
repeatPhoneNumberInput;
@ -10,7 +9,6 @@ class ProvidePhoneNumber {
constructor() {
this.modal = document.querySelector('#modal');
this.declineModal = document.querySelector('#declineModal');
this.providePhoneNumberLaterButton = document.querySelector('#providePhoneNumberLaterButton');
this.phoneNumberInput = document.querySelector('#phoneNumberInput');
this.agovInputPhoneNumberInput = document.querySelector('#agovInputPhoneNumberInput');
this.agovInputRepeatPhoneNumberInput = document.querySelector('#agovInputRepeatPhoneNumberInput');
@ -20,20 +18,6 @@ class ProvidePhoneNumber {
this.addPhoneInputEventHandlers(this.phoneNumberInput);
this.addPhoneInputEventHandlers(this.repeatPhoneNumberInput);
document.querySelector('#declineModalBack').addEventListener('click', () => {
this.resetValidation(this.agovInputPhoneNumberInput);
this.setInvisible(this.declineModal);
});
document.querySelector('#repeatPhoneNumberModalBack').addEventListener('click', () => {
this.initializePhoneInput(this.phoneNumberInput);
this.setInvisible(this.modal);
});
document.querySelector('#repeatPhoneNumberModalContinue').addEventListener('click', () => {
if (this.validateInput(this.agovInputRepeatPhoneNumberInput)) {
this.evaluatePhoneNumbersAndSubmit();
this.initializePhoneInput(this.phoneNumberInput);
}
});
document.querySelector('#providePhoneNumberContinueButton').addEventListener('click', () => {
const dialCode = `+${window.phoneNumberUtils.getDialCode()}`;
if (this.validateInput(this.agovInputPhoneNumberInput)) {
@ -50,6 +34,18 @@ class ProvidePhoneNumber {
});
}
onRepeatModalSubmit() {
if (this.validateInput(this.agovInputRepeatPhoneNumberInput)) {
this.evaluatePhoneNumbersAndSubmit();
this.initializePhoneInput(this.phoneNumberInput);
}
}
onRepeatModalCancel() {
this.initializePhoneInput(this.phoneNumberInput);
this.setInvisible(this.modal);
}
addPhoneInputEventHandlers(phoneInputElement) {
phoneInputElement.addEventListener('input', () => {
this.formatAndEmitPhoneNumberValue(phoneInputElement);
@ -141,9 +137,34 @@ class ProvidePhoneNumber {
window.utils.changeDisplay(errorBanner, 'hidden', 'block');
}
}
onCloseDeclineModal() {
this.resetValidation(this.agovInputPhoneNumberInput);
this.setInvisible(this.declineModal);
}
onSubmitDeclineModal() {
setTimeout(() => {
document.querySelector('#continueWithoutPhoneNumberButton').click();
});
}
}
document.addEventListener('DOMContentLoaded', () => {
document.dispatchEvent(new Event('initPhoneNumberUtils'));
window.providePhoneNumber = new ProvidePhoneNumber();
document.addEventListener('declineModalCancelEvent', () => {
window.providePhoneNumber.onCloseDeclineModal();
});
document.addEventListener('declineModalSubmitEvent', () => {
window.providePhoneNumber.onSubmitDeclineModal();
});
document.addEventListener('repeatModalCancelEvent', () => {
window.providePhoneNumber.onRepeatModalCancel();
});
document.addEventListener('repeatModalSubmitEvent', () => {
window.providePhoneNumber.onRepeatModalSubmit();
});
});

View File

@ -77,7 +77,7 @@
$text.get("footer.text")
<a target="_blank" class='text-hyperlink dark:text-dark-hyperlink underline' href='$text.get("footer.link")'>$text.get("footer.link.label")</a>
</div>
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
</body>
<script src="${login.appDataPath}/static/bundle.js"></script>

View File

@ -3,214 +3,167 @@
#parse("${templatePath}/backdrop.vm")
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
basis-full md:basis-1/2">
<div class="flex mb-8 items-baseline">
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">
<div class="flex mb-8 items-baseline">
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">
$text.get("providePhoneNumber.title")
</h3>
</div>
<div class="flex flex-col gap-8">
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 hidden"
id="errorBanner">
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
</h3>
</div>
<div class="flex flex-col gap-8">
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 hidden"
id="errorBanner">
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.errorBanner")
</p>
</div>
<div class="flex flex-col gap-4">
<p class="font-body text-body-l text-space-blue dark:text-white">
</p>
</div>
<div class="flex flex-col gap-4">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.description")
</p>
<agov-input
id="agovInputPhoneNumberInput"
data-label="$text.get("providePhoneNumber.inputLabel")"
data-id="phoneNumberInput"
data-name="phoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</div>
</div>
<div class="flex flex-col gap-4">
<div class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4">
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
</p>
<agov-input
id="agovInputPhoneNumberInput"
data-label="$text.get("providePhoneNumber.inputLabel")"
data-id="phoneNumberInput"
data-name="phoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</div>
</div>
<div class="flex flex-col gap-4">
<div class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4">
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.banner")
</p>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex flex-col-reverse sm:flex-row gap-4">
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
class="w-full"
accept-charset="UTF-8">
<agov-button
data-name="submit"
data-value="submit"
data-style="secondary"
data-label="$text.get("loainfo.later")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="later">
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<agov-button
id="providePhoneNumberContinueButton"
class="w-full"
data-style="primary"
data-label="$text.get("providePhoneNumber.saveButtonText")"
data-type="button"
data-fullwidth="true">
</agov-button>
</div>
</div>
</div>
</div>
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 dark:hidden block sm:hidden md:block">
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number-dark.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 hidden dark:block dark:sm:hidden dark:md:block">
</div>
</p>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex flex-col-reverse sm:flex-row gap-4">
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
class="w-full"
accept-charset="UTF-8">
<agov-button
data-name="submit"
data-value="submit"
data-style="secondary"
data-label="$text.get("loainfo.later")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="later">
<input class="hidden" name="authRequestId" type="hidden"
value="$gui.getGuiElem('authRequestId').value"/>
</form>
<agov-button
id="providePhoneNumberContinueButton"
class="w-full"
data-label="$text.get("providePhoneNumber.saveButtonText")"
data-type="button"
data-fullwidth="true">
</agov-button>
</div>
</div>
</div>
</div>
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 dark:hidden block sm:hidden md:block">
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number-dark.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 hidden dark:block dark:sm:hidden dark:md:block">
</div>
</div>
<div id="modal" class="fixed top-0 bottom-0 left-0 right-0 pb-20 z-50 hidden">
<div class="fixed top-0 bottom-0 left-0 right-0 backdrop-blur-[10px]" id="modal_light"></div>
<div class="fixed top-0 bottom-0 left-0 right-0 bg-[#E2E2E2E5]/80 dark:bg-[#111111]/90" id="modal_dark"></div>
<div id="drawer"
class="fixed bg-white dark:bg-surface-black rounded-[20px] p-10 w-11/12 sm:max-w-[660px] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<agov-modal class="hidden"
id="modal"
data-title="$text.get("providePhoneNumber.modal.title")"
data-description="$text.get("providePhoneNumber.modal.description")"
data-cancel-button-label="$text.get("general.back")"
data-submit-button-label="$text.get("general.continue")"
data-submit-button-event-name="repeatModalSubmitEvent"
data-cancel-button-event-name="repeatModalCancelEvent">
<agov-input
id="agovInputRepeatPhoneNumberInput"
data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="repeatPhoneNumberInput"
data-name="repeatPhoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</agov-modal>
<form class="hidden"
id="$gui.name"
name="$gui.name"
method="POST"
target="_self"
action="$formTarget"
autocomplete="off"
accept-charset="UTF-8">
<agov-input data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="mobile"
data-name="mobile"
data-placeholder=""
data-value=""
data-type="tel">
</agov-input>
<agov-button data-name="submit"
data-id="submitPhoneNumber"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<div id="modalTab" class="mb-6 cursor-pointer hidden">
<div class="w-10 h-1 rounded-full bg-light-grey dark:bg-ash mx-auto"></div>
</div>
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
$text.get("providePhoneNumber.modal.title")
</h4>
<div class="flex flex-col gap-[72px]">
<div class="flex flex-col gap-8">
<div id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.modal.description")
</p>
</div>
<agov-input
id="agovInputRepeatPhoneNumberInput"
data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="repeatPhoneNumberInput"
data-name="repeatPhoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
accept-charset="UTF-8"
class="hidden flex flex-col flex-auto block">
<agov-input
id="agovInputMobile"
data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="mobile"
data-name="mobile"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true">
</agov-input>
<agov-button
class="basis-full"
data-name="submit"
data-id="submitPhoneNumber"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex justify-end flex-col-reverse sm:flex-row gap-4">
<agov-button
class="block"
id="repeatPhoneNumberModalBack"
data-style="secondary"
data-label="$text.get("general.back")"
data-type="button"
data-fullwidth="true">
</agov-button>
<agov-button
class="block"
id="repeatPhoneNumberModalContinue"
data-style="primary"
data-label="$text.get("general.continue")"
data-type="button"
data-fullwidth="true">
</agov-button>
</div>
</div>
</div>
</div>
</div>
<div id="declineModal" class="fixed top-0 bottom-0 left-0 right-0 pb-20 z-50 hidden">
<div class="fixed top-0 bottom-0 left-0 right-0 backdrop-blur-[10px]" id="modal_light"></div>
<div class="fixed top-0 bottom-0 left-0 right-0 bg-[#E2E2E2E5]/80 dark:bg-[#111111]/90" id="modal_dark"></div>
<div id="drawer"
class="fixed bg-white dark:bg-surface-black rounded-[20px] p-10 w-11/12 sm:max-w-[660px] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<div id="modalTab" class="mb-6 cursor-pointer hidden">
<div class="w-10 h-1 rounded-full bg-light-grey dark:bg-ash mx-auto"></div>
</div>
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
$text.get("providePhoneNumber.laterModal.title")
</h4>
<div class="flex flex-col gap-[72px]">
<div class="flex flex-col gap-4" id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description1")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description2")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description3")
</p>
</div>
<div class="w-full sm:static mt-auto sm:justify-items-end">
<div class="flex justify-end flex-col-reverse sm:flex-row gap-4">
<agov-button
id="declineModalBack"
data-style="secondary"
data-label="$text.get("general.back")"
data-type="button"
data-fullwidth="true">
</agov-button>
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
accept-charset="UTF-8"
class="flex flex-col flex-auto block">
<agov-button
data-name="submit"
data-value="submit"
data-label="$text.get("general.continue")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="persistent">
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
</div>
</div>
</div>
</div>
</div>
<agov-modal class="hidden"
id="declineModal"
data-title="$text.get("providePhoneNumber.laterModal.title")"
data-cancel-button-label="$text.get("general.back")"
data-submit-button-label="$text.get("general.continue")"
data-submit-button-event-name="declineModalSubmitEvent"
data-cancel-button-event-name="declineModalCancelEvent">
<div class="flex flex-col gap-4" id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description1")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description2")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description3")
</p>
</div>
</agov-modal>
<form class="hidden"
id="$gui.name"
name="$gui.name"
method="POST"
target="_self"
action="$formTarget"
autocomplete="off"
accept-charset="UTF-8">
<agov-button
data-name="submit"
data-id="continueWithoutPhoneNumberButton"
data-value="submit"
data-label="$text.get("general.continue")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="persistent">
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<script src="${login.appDataPath}/static/js-code/ask_mobile.js">
</script>

View File

@ -3,7 +3,7 @@
$text.get("footer.text")
<a target="_blank" class='text-hyperlink dark:text-dark-hyperlink underline' href='$text.get("footer.link")'>$text.get("footer.link.label")</a>
</div>
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="${login.appDataPath}/static/bundle.js"></script>
</body>

View File

@ -88,74 +88,44 @@
</div>
</div>
<div id="modal" class="fixed top-0 bottom-0 left-0 right-0 pb-20 z-50 hidden">
<div class="fixed top-0 bottom-0 left-0 right-0 backdrop-blur-[10px]" id="modal_light"></div>
<div class="fixed top-0 bottom-0 left-0 right-0 bg-[#E2E2E2E5]/80 dark:bg-[#111111]/90" id="modal_dark"></div>
<div id="drawer"
class="fixed bg-white dark:bg-surface-black rounded-[20px] p-10 w-11/12 sm:max-w-[660px] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<div id="modalTab" class="mb-6 cursor-pointer hidden">
<div class="w-10 h-1 rounded-full bg-light-grey dark:bg-ash mx-auto"></div>
</div>
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
$text.get("general.recoveryCode.repeatCodeModal.title")
</h4>
<div class="flex flex-col gap-8">
<div id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("general.recoveryCode.repeatCodeModal.description")
</p>
</div>
<agov-input
data-label="$text.get("general.recoveryCode.inputLabel")"
data-id="repeatRecoveryCodeInput"
data-name="repeatRecoveryCodeInput"
data-placeholder=""
data-value=""
data-type="text"
data-autofocus="true"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex justify-end flex-col-reverse sm:flex-row gap-4">
<agov-button
id="repeatRecoveryCodeModalBack"
class="block"
data-style="secondary"
data-label="$text.get("general.back")"
data-type="button"
data-fullwidth="true">
</agov-button>
<agov-button
id="repeatRecoveryCodeModalContinue"
class="block"
data-style="primary"
data-label="$text.get("general.continue")"
data-type="button"
data-fullwidth="true">
</agov-button>
<form id="$gui.name" name="$gui.name" method="POST" target="_self"
action="$formTarget" autocomplete="off"
accept-charset="UTF-8"
class="hidden">
<agov-button
class="block basis-full"
data-name="submit"
data-id="submit"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
</div>
</div>
</div>
</div>
<agov-modal class="hidden"
id="modal"
data-title="$text.get("general.recoveryCode.repeatCodeModal.title")"
data-description="$text.get("general.recoveryCode.repeatCodeModal.description")"
data-cancel-button-label="$text.get("general.back")"
data-submit-button-label="$text.get("general.continue")"
data-submit-button-event-name="repeatRecoveryCodeModalSubmitEvent"
data-cancel-button-event-name="repeatRecoveryCodeModalCancelEvent">
<agov-input
data-label="$text.get("general.recoveryCode.inputLabel")"
data-id="repeatRecoveryCodeInput"
data-name="repeatRecoveryCodeInput"
data-placeholder=""
data-value=""
data-type="text"
data-autofocus="true"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</agov-modal>
<form class="hidden"
id="$gui.name"
name="$gui.name"
method="POST"
target="_self"
action="$formTarget"
autocomplete="off"
accept-charset="UTF-8">
<agov-button
class="block basis-full"
data-name="submit"
data-id="submit"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<script src="${login.appDataPath}/static/js-code/recovery_code.js">
</script>

View File

@ -2,6 +2,7 @@
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
<html lang="$login.language" class="relative min-h-100 h-full mx-4 flex sm:block">
<head>
<script src="${login.appDataPath}/static/preload.js"></script>
<title>AGOV</title>
<meta charset="UTF-8">
<script src="${login.appDataPath}/static/preload.js"></script>
@ -24,7 +25,9 @@
dark:block">
<div class="flex items-center flex-1 sm:flex-initial justify-end">
#set ($langMenu = '')
#foreach ($locale in $login.locales)
## NOTE/2025-06-30/haburger: using hard coded, sorted array instead of $login.locales
#set($localeList = ["de", "fr", "it", "rm", "en"])
#foreach ($locale in $localeList)
## find translated label of current locale
#if ($text.contains("language.$locale"))
#set ($langLabel = $text.get("language.$locale"))

View File

@ -1,7 +1,6 @@
class ProvidePhoneNumber {
modal;
declineModal;
providePhoneNumberLaterButton;
phoneNumberInput;
agovInputPhoneNumberInput;
repeatPhoneNumberInput;
@ -10,7 +9,6 @@ class ProvidePhoneNumber {
constructor() {
this.modal = document.querySelector('#modal');
this.declineModal = document.querySelector('#declineModal');
this.providePhoneNumberLaterButton = document.querySelector('#providePhoneNumberLaterButton');
this.phoneNumberInput = document.querySelector('#phoneNumberInput');
this.agovInputPhoneNumberInput = document.querySelector('#agovInputPhoneNumberInput');
this.agovInputRepeatPhoneNumberInput = document.querySelector('#agovInputRepeatPhoneNumberInput');
@ -20,20 +18,6 @@ class ProvidePhoneNumber {
this.addPhoneInputEventHandlers(this.phoneNumberInput);
this.addPhoneInputEventHandlers(this.repeatPhoneNumberInput);
document.querySelector('#declineModalBack').addEventListener('click', () => {
this.resetValidation(this.agovInputPhoneNumberInput);
this.setInvisible(this.declineModal);
});
document.querySelector('#repeatPhoneNumberModalBack').addEventListener('click', () => {
this.initializePhoneInput(this.phoneNumberInput);
this.setInvisible(this.modal);
});
document.querySelector('#repeatPhoneNumberModalContinue').addEventListener('click', () => {
if (this.validateInput(this.agovInputRepeatPhoneNumberInput)) {
this.evaluatePhoneNumbersAndSubmit();
this.initializePhoneInput(this.phoneNumberInput);
}
});
document.querySelector('#providePhoneNumberContinueButton').addEventListener('click', () => {
const dialCode = `+${window.phoneNumberUtils.getDialCode()}`;
if (this.validateInput(this.agovInputPhoneNumberInput)) {
@ -50,6 +34,18 @@ class ProvidePhoneNumber {
});
}
onRepeatModalSubmit() {
if (this.validateInput(this.agovInputRepeatPhoneNumberInput)) {
this.evaluatePhoneNumbersAndSubmit();
this.initializePhoneInput(this.phoneNumberInput);
}
}
onRepeatModalCancel() {
this.initializePhoneInput(this.phoneNumberInput);
this.setInvisible(this.modal);
}
addPhoneInputEventHandlers(phoneInputElement) {
phoneInputElement.addEventListener('input', () => {
this.formatAndEmitPhoneNumberValue(phoneInputElement);
@ -141,9 +137,34 @@ class ProvidePhoneNumber {
window.utils.changeDisplay(errorBanner, 'hidden', 'block');
}
}
onCloseDeclineModal() {
this.resetValidation(this.agovInputPhoneNumberInput);
this.setInvisible(this.declineModal);
}
onSubmitDeclineModal() {
setTimeout(() => {
document.querySelector('#continueWithoutPhoneNumberButton').click();
});
}
}
document.addEventListener('DOMContentLoaded', () => {
document.dispatchEvent(new Event('initPhoneNumberUtils'));
window.providePhoneNumber = new ProvidePhoneNumber();
document.addEventListener('declineModalCancelEvent', () => {
window.providePhoneNumber.onCloseDeclineModal();
});
document.addEventListener('declineModalSubmitEvent', () => {
window.providePhoneNumber.onSubmitDeclineModal();
});
document.addEventListener('repeatModalCancelEvent', () => {
window.providePhoneNumber.onRepeatModalCancel();
});
document.addEventListener('repeatModalSubmitEvent', () => {
window.providePhoneNumber.onRepeatModalSubmit();
});
});

View File

@ -77,7 +77,7 @@
$text.get("footer.text")
<a target="_blank" class='text-hyperlink dark:text-dark-hyperlink underline' href='$text.get("footer.link")'>$text.get("footer.link.label")</a>
</div>
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
</body>
<script src="${login.appDataPath}/static/bundle.js"></script>

View File

@ -3,214 +3,167 @@
#parse("${templatePath}/backdrop.vm")
<div id="mainContent" class="container mx-auto sm:mt-32 sm:max-w-full flex flex-auto sm:block">
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
<div class="flex flex-col-reverse sm:flex-row justify-evenly items-center gap-5 w-full">
<div class="flex flex-col sm:bg-white sm:dark:bg-surface-black rounded-[20px] sm:px-10 sm:py-10 max-w-[550px] w-full
basis-full md:basis-1/2">
<div class="flex mb-8 items-baseline">
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">
<div class="flex mb-8 items-baseline">
<h3 class="font-header text-h3 text-space-blue dark:text-white mr-3">
$text.get("providePhoneNumber.title")
</h3>
</div>
<div class="flex flex-col gap-8">
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 hidden"
id="errorBanner">
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
</h3>
</div>
<div class="flex flex-col gap-8">
<div class="error flex rounded-xl bg-error-background dark:bg-dark-error-background items-center p-4 hidden"
id="errorBanner">
<i class="fa-regular fa-exclamation-circle rounded-full p-3 text-error dark:text-dark-error bg-error/10 dark:bg-dark-error-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.errorBanner")
</p>
</div>
<div class="flex flex-col gap-4">
<p class="font-body text-body-l text-space-blue dark:text-white">
</p>
</div>
<div class="flex flex-col gap-4">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.description")
</p>
<agov-input
id="agovInputPhoneNumberInput"
data-label="$text.get("providePhoneNumber.inputLabel")"
data-id="phoneNumberInput"
data-name="phoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</div>
</div>
<div class="flex flex-col gap-4">
<div class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4">
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
</p>
<agov-input
id="agovInputPhoneNumberInput"
data-label="$text.get("providePhoneNumber.inputLabel")"
data-id="phoneNumberInput"
data-name="phoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</div>
</div>
<div class="flex flex-col gap-4">
<div class="info flex rounded-xl bg-info-background dark:bg-dark-info-background items-center p-4">
<i class="fa-regular fa-info-circle rounded-full p-3 text-info dark:text-dark-info bg-info/10 dark:bg-dark-info-icon mr-4 text-xl leading-none"></i>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.banner")
</p>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex flex-col-reverse sm:flex-row gap-4">
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
class="w-full"
accept-charset="UTF-8">
<agov-button
data-name="submit"
data-value="submit"
data-style="secondary"
data-label="$text.get("loainfo.later")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="later">
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<agov-button
id="providePhoneNumberContinueButton"
class="w-full"
data-style="primary"
data-label="$text.get("providePhoneNumber.saveButtonText")"
data-type="button"
data-fullwidth="true">
</agov-button>
</div>
</div>
</div>
</div>
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 dark:hidden block sm:hidden md:block">
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number-dark.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 hidden dark:block dark:sm:hidden dark:md:block">
</div>
</p>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex flex-col-reverse sm:flex-row gap-4">
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
class="w-full"
accept-charset="UTF-8">
<agov-button
data-name="submit"
data-value="submit"
data-style="secondary"
data-label="$text.get("loainfo.later")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="later">
<input class="hidden" name="authRequestId" type="hidden"
value="$gui.getGuiElem('authRequestId').value"/>
</form>
<agov-button
id="providePhoneNumberContinueButton"
class="w-full"
data-label="$text.get("providePhoneNumber.saveButtonText")"
data-type="button"
data-fullwidth="true">
</agov-button>
</div>
</div>
</div>
</div>
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 dark:hidden block sm:hidden md:block">
<img alt="" src="${login.appDataPath}/static/images/provide-phone-number-dark.svg"
class="md:max-w-[520px] max-w-[350px] sm:max-w-[300px] w-full md:basis-1/2 hidden dark:block dark:sm:hidden dark:md:block">
</div>
</div>
<div id="modal" class="fixed top-0 bottom-0 left-0 right-0 pb-20 z-50 hidden">
<div class="fixed top-0 bottom-0 left-0 right-0 backdrop-blur-[10px]" id="modal_light"></div>
<div class="fixed top-0 bottom-0 left-0 right-0 bg-[#E2E2E2E5]/80 dark:bg-[#111111]/90" id="modal_dark"></div>
<div id="drawer"
class="fixed bg-white dark:bg-surface-black rounded-[20px] p-10 w-11/12 sm:max-w-[660px] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<agov-modal class="hidden"
id="modal"
data-title="$text.get("providePhoneNumber.modal.title")"
data-description="$text.get("providePhoneNumber.modal.description")"
data-cancel-button-label="$text.get("general.back")"
data-submit-button-label="$text.get("general.continue")"
data-submit-button-event-name="repeatModalSubmitEvent"
data-cancel-button-event-name="repeatModalCancelEvent">
<agov-input
id="agovInputRepeatPhoneNumberInput"
data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="repeatPhoneNumberInput"
data-name="repeatPhoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</agov-modal>
<form class="hidden"
id="$gui.name"
name="$gui.name"
method="POST"
target="_self"
action="$formTarget"
autocomplete="off"
accept-charset="UTF-8">
<agov-input data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="mobile"
data-name="mobile"
data-placeholder=""
data-value=""
data-type="tel">
</agov-input>
<agov-button data-name="submit"
data-id="submitPhoneNumber"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<div id="modalTab" class="mb-6 cursor-pointer hidden">
<div class="w-10 h-1 rounded-full bg-light-grey dark:bg-ash mx-auto"></div>
</div>
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
$text.get("providePhoneNumber.modal.title")
</h4>
<div class="flex flex-col gap-[72px]">
<div class="flex flex-col gap-8">
<div id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.modal.description")
</p>
</div>
<agov-input
id="agovInputRepeatPhoneNumberInput"
data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="repeatPhoneNumberInput"
data-name="repeatPhoneNumberInput"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true"
data-is_icon_padding_ignored="true"
data-email_invalid="$text.get("general.wrongPhoneNumber")"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
accept-charset="UTF-8"
class="hidden flex flex-col flex-auto block">
<agov-input
id="agovInputMobile"
data-label="$text.get("providePhoneNumber.modal.inputLabel")"
data-id="mobile"
data-name="mobile"
data-placeholder=""
data-value=""
data-type="tel"
data-autofocus="true">
</agov-input>
<agov-button
class="basis-full"
data-name="submit"
data-id="submitPhoneNumber"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex justify-end flex-col-reverse sm:flex-row gap-4">
<agov-button
class="block"
id="repeatPhoneNumberModalBack"
data-style="secondary"
data-label="$text.get("general.back")"
data-type="button"
data-fullwidth="true">
</agov-button>
<agov-button
class="block"
id="repeatPhoneNumberModalContinue"
data-style="primary"
data-label="$text.get("general.continue")"
data-type="button"
data-fullwidth="true">
</agov-button>
</div>
</div>
</div>
</div>
</div>
<div id="declineModal" class="fixed top-0 bottom-0 left-0 right-0 pb-20 z-50 hidden">
<div class="fixed top-0 bottom-0 left-0 right-0 backdrop-blur-[10px]" id="modal_light"></div>
<div class="fixed top-0 bottom-0 left-0 right-0 bg-[#E2E2E2E5]/80 dark:bg-[#111111]/90" id="modal_dark"></div>
<div id="drawer"
class="fixed bg-white dark:bg-surface-black rounded-[20px] p-10 w-11/12 sm:max-w-[660px] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<div id="modalTab" class="mb-6 cursor-pointer hidden">
<div class="w-10 h-1 rounded-full bg-light-grey dark:bg-ash mx-auto"></div>
</div>
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
$text.get("providePhoneNumber.laterModal.title")
</h4>
<div class="flex flex-col gap-[72px]">
<div class="flex flex-col gap-4" id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description1")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description2")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description3")
</p>
</div>
<div class="w-full sm:static mt-auto sm:justify-items-end">
<div class="flex justify-end flex-col-reverse sm:flex-row gap-4">
<agov-button
id="declineModalBack"
data-style="secondary"
data-label="$text.get("general.back")"
data-type="button"
data-fullwidth="true">
</agov-button>
<form id="$gui.name" name="$gui.name" method="POST" target="_self" action="$formTarget" autocomplete="off"
accept-charset="UTF-8"
class="flex flex-col flex-auto block">
<agov-button
data-name="submit"
data-value="submit"
data-label="$text.get("general.continue")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="persistent">
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
</div>
</div>
</div>
</div>
</div>
<agov-modal class="hidden"
id="declineModal"
data-title="$text.get("providePhoneNumber.laterModal.title")"
data-cancel-button-label="$text.get("general.back")"
data-submit-button-label="$text.get("general.continue")"
data-submit-button-event-name="declineModalSubmitEvent"
data-cancel-button-event-name="declineModalCancelEvent">
<div class="flex flex-col gap-4" id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description1")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description2")
</p>
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("providePhoneNumber.laterModal.description3")
</p>
</div>
</agov-modal>
<form class="hidden"
id="$gui.name"
name="$gui.name"
method="POST"
target="_self"
action="$formTarget"
autocomplete="off"
accept-charset="UTF-8">
<agov-button
data-name="submit"
data-id="continueWithoutPhoneNumberButton"
data-value="submit"
data-label="$text.get("general.continue")"
data-type="submit"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="skip" value="persistent">
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<script src="${login.appDataPath}/static/js-code/ask_mobile.js">
</script>

View File

@ -3,7 +3,7 @@
$text.get("footer.text")
<a target="_blank" class='text-hyperlink dark:text-dark-hyperlink underline' href='$text.get("footer.link")'>$text.get("footer.link.label")</a>
</div>
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="${login.appDataPath}/static/bundle.js"></script>
</body>

View File

@ -88,74 +88,44 @@
</div>
</div>
<div id="modal" class="fixed top-0 bottom-0 left-0 right-0 pb-20 z-50 hidden">
<div class="fixed top-0 bottom-0 left-0 right-0 backdrop-blur-[10px]" id="modal_light"></div>
<div class="fixed top-0 bottom-0 left-0 right-0 bg-[#E2E2E2E5]/80 dark:bg-[#111111]/90" id="modal_dark"></div>
<div id="drawer"
class="fixed bg-white dark:bg-surface-black rounded-[20px] p-10 w-11/12 sm:max-w-[660px] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<div id="modalTab" class="mb-6 cursor-pointer hidden">
<div class="w-10 h-1 rounded-full bg-light-grey dark:bg-ash mx-auto"></div>
</div>
<h4 id="modalTitle" class="font-header text-h4 text-space-blue dark:text-white mb-8">
$text.get("general.recoveryCode.repeatCodeModal.title")
</h4>
<div class="flex flex-col gap-8">
<div id="modalDescription">
<p class="font-body text-body-l text-space-blue dark:text-white">
$text.get("general.recoveryCode.repeatCodeModal.description")
</p>
</div>
<agov-input
data-label="$text.get("general.recoveryCode.inputLabel")"
data-id="repeatRecoveryCodeInput"
data-name="repeatRecoveryCodeInput"
data-placeholder=""
data-value=""
data-type="text"
data-autofocus="true"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</div>
<div class="w-full sm:static mt-auto">
<div class="flex justify-end flex-col-reverse sm:flex-row gap-4">
<agov-button
id="repeatRecoveryCodeModalBack"
class="block"
data-style="secondary"
data-label="$text.get("general.back")"
data-type="button"
data-fullwidth="true">
</agov-button>
<agov-button
id="repeatRecoveryCodeModalContinue"
class="block"
data-style="primary"
data-label="$text.get("general.continue")"
data-type="button"
data-fullwidth="true">
</agov-button>
<form id="$gui.name" name="$gui.name" method="POST" target="_self"
action="$formTarget" autocomplete="off"
accept-charset="UTF-8"
class="hidden">
<agov-button
class="block basis-full"
data-name="submit"
data-id="submit"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
</div>
</div>
</div>
</div>
<agov-modal class="hidden"
id="modal"
data-title="$text.get("general.recoveryCode.repeatCodeModal.title")"
data-description="$text.get("general.recoveryCode.repeatCodeModal.description")"
data-cancel-button-label="$text.get("general.back")"
data-submit-button-label="$text.get("general.continue")"
data-submit-button-event-name="repeatRecoveryCodeModalSubmitEvent"
data-cancel-button-event-name="repeatRecoveryCodeModalCancelEvent">
<agov-input
data-label="$text.get("general.recoveryCode.inputLabel")"
data-id="repeatRecoveryCodeInput"
data-name="repeatRecoveryCodeInput"
data-placeholder=""
data-value=""
data-type="text"
data-autofocus="true"
data-email_required="$text.get("general.fieldRequired")">
</agov-input>
</agov-modal>
<form class="hidden"
id="$gui.name"
name="$gui.name"
method="POST"
target="_self"
action="$formTarget"
autocomplete="off"
accept-charset="UTF-8">
<agov-button
class="block basis-full"
data-name="submit"
data-id="submit"
data-value="submit"
data-type="submit"
data-label="$text.get("general.continue")"
data-fullwidth="true">
</agov-button>
<input class="hidden" name="authRequestId" type="hidden" value="$gui.getGuiElem('authRequestId').value"/>
</form>
<script src="${login.appDataPath}/static/js-code/recovery_code.js">
</script>

View File

@ -2,6 +2,7 @@
## svh -> Small View Height. It's not taking the height of the search bar on mobile into account
<html lang="$login.language" class="relative min-h-100 h-full mx-4 flex sm:block">
<head>
<script src="${login.appDataPath}/static/preload.js"></script>
<title>AGOV</title>
<meta charset="UTF-8">
<script src="${login.appDataPath}/static/preload.js"></script>
@ -24,7 +25,9 @@
dark:block">
<div class="flex items-center flex-1 sm:flex-initial justify-end">
#set ($langMenu = '')
#foreach ($locale in $login.locales)
## NOTE/2025-06-30/haburger: using hard coded, sorted array instead of $login.locales
#set($localeList = ["de", "fr", "it", "rm", "en"])
#foreach ($locale in $localeList)
## find translated label of current locale
#if ($text.contains("language.$locale"))
#set ($langLabel = $text.get("language.$locale"))

View File

@ -46,7 +46,7 @@ spec:
podDisruptionBudget:
maxUnavailable: "50%"
git:
tag: "r-0a95034444af9c2e5b4a8c12cc3a0f444f6b0447"
tag: "r-25da499166053032321f08e80ed9ec3136c59cd1"
dir: "DEFAULT-ADN-AGOV-PROJECT/DEFAULT-ADN-AGOV-INV/proxy-idp"
credentials: "git-credentials"
keystores:

View File

@ -63,7 +63,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="/resources/static/bundle.js"></script>
</body>

View File

@ -60,7 +60,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="/resources/static/bundle.js"></script>
</body>

View File

@ -61,7 +61,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="/resources/static/bundle.js"></script>
</body>

View File

@ -62,7 +62,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="/resources/static/bundle.js"></script>
</body>

View File

@ -64,7 +64,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
</body>
<script src="/resources/static/bundle.js"></script>

View File

@ -66,7 +66,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="/resources/static/bundle.js"></script>
</body>

View File

@ -63,7 +63,7 @@
</div>
</div>
<footer class="hidden sm:flex mt-auto font-body text-body-s text-disabled-grey dark:text-silver w-full p-2 justify-end">
<p data-test="agovVersionNumber">1.11.0.local-20250704T042155Z-haburger: Fri Jul 4 06:28:02 CEST 2025</p>
<p data-test="agovVersionNumber">1.11.0.local-20250709T152644Z-haburger: Wed Jul 9 17:52:01 CEST 2025</p>
</footer>
<script src="/resources/static/bundle.js"></script>
</body>