From 1e7a39bcf94eadae561bd3dcdad1aa5935428e06 Mon Sep 17 00:00:00 2001 From: Debora Crescenzo Date: Thu, 14 Nov 2024 15:32:38 +0000 Subject: [PATCH] MT#61536 Improve how password requirements are handled To make sure compatibility with previous versions and avoid the app crashing, we are adding a better handling of the case where security.password object doesn't exist in platforminfo. This covers the edge case where costumers with ad hoc solutions cannot upgrade to latest templates version. Change-Id: I8aef12170d2f3782424f8b12dc032b3d465fb6b6 (cherry picked from commit 499e89ac4489d7d47c9f8fdfbee9273aa67771cb) (cherry picked from commit 838ccfbbe2c75c56e7c4f5df3e6b05b4374ff318) --- src/components/form/CscInputPasswordRetype.vue | 5 ++++- src/pages/CscPageUserSettings.vue | 3 +-- src/store/user.js | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/components/form/CscInputPasswordRetype.vue b/src/components/form/CscInputPasswordRetype.vue index 5532e7da..93edd43f 100644 --- a/src/components/form/CscInputPasswordRetype.vue +++ b/src/components/form/CscInputPasswordRetype.vue @@ -129,7 +129,10 @@ export default { 'passwordRequirements' ]), areValidationsActive () { - return this.passwordType === 'web' ? this.passwordRequirements.web_validate : this.passwordRequirements.sip_validate + const webValidate = this.passwordRequirements?.web_validate || false + const sipValidate = this.passwordRequirements?.sip_validate || false + + return this.passwordType === 'web' ? webValidate : sipValidate }, passwordScoreMappedValue () { if (this.passwordScore === null || this.passwordScore === undefined) { diff --git a/src/pages/CscPageUserSettings.vue b/src/pages/CscPageUserSettings.vue index 02a9a869..8a8a23af 100644 --- a/src/pages/CscPageUserSettings.vue +++ b/src/pages/CscPageUserSettings.vue @@ -87,8 +87,7 @@ export default { }, computed: { ...mapGetters('user', [ - 'getSubscriber', - 'passwordRequirements' + 'getSubscriber' ]), ...mapWaitingGetters({ processingChangeSIPPassword: WAIT_CHANGE_SIP_PASSWORD, diff --git a/src/store/user.js b/src/store/user.js index 8eb3f77f..490239e5 100644 --- a/src/store/user.js +++ b/src/store/user.js @@ -138,7 +138,7 @@ export default { return state.loginError }, passwordRequirements (state) { - return state.platformInfo.security.password + return state.platformInfo?.security?.password || [] }, userDataRequesting (state) { return state.userDataRequesting