diff --git a/opal-ui/src/components/profile/ProfileUser.vue b/opal-ui/src/components/profile/ProfileUser.vue index 7fa3f82e50..80bd182810 100644 --- a/opal-ui/src/components/profile/ProfileUser.vue +++ b/opal-ui/src/components/profile/ProfileUser.vue @@ -18,6 +18,16 @@ :label="$t('user_profile.update_password')" @click="onUpdatePassword" /> +
+ +
{{ $t('user_profile.password_update_not_allowed', { realm: profile?.realm }) }} @@ -310,9 +320,10 @@ const columns = computed(() => [ const tokenNames = computed(() => tokens.value.map((t) => t.name)); const otpIcon = computed(() => (profile.value?.otpEnabled ? 'lock_open' : 'lock')); -const isOpalUserRealm = computed(() => profile.value && 'opal-user-realm' === profile.value.realm); +const realms = computed(() => profile.value?.realm?.split(',') || []); +const isOpalUserRealm = computed(() => realms.value?.includes('opal-user-realm')); const isAnOpalRealm = computed( - () => profile.value && ['opal-ini-realm', 'opal-user-realm'].includes(profile.value.realm) + () => profile.value && (realms.value?.includes('opal-user-realm') || realms.value?.includes('opal-ini-realm')) ); const androidOtpUrl = computed(() => { return `${t( @@ -435,4 +446,8 @@ onMounted(() => { loading.value = false; }); }); + +function onAccountLink() { + window.open(profile.value?.accountUrl, '_blank'); +} diff --git a/opal-ui/src/i18n/en/index.js b/opal-ui/src/i18n/en/index.js index 35513b984d..8a5f473d70 100644 --- a/opal-ui/src/i18n/en/index.js +++ b/opal-ui/src/i18n/en/index.js @@ -434,6 +434,7 @@ export default { android_only_otp: 'Android only', ios_otp: 'iOS', update_password: 'Update Password', + external_account: 'External account', enable_2fa: 'Enable 2FA', disable_2fa: 'Disable 2FA', otp_qr_core_info: 'Open the authenticator mobile app and scan this QR code to initialise your PIN code generator:', diff --git a/opal-ui/src/i18n/fr/index.js b/opal-ui/src/i18n/fr/index.js index ac95eab574..9f9bfa492e 100644 --- a/opal-ui/src/i18n/fr/index.js +++ b/opal-ui/src/i18n/fr/index.js @@ -434,6 +434,7 @@ export default { android_only_otp: 'Android uniquement', ios_otp: 'iOS', update_password: 'Mettre à jour le mot de passe', + external_account: 'Compte externe', enable_2fa: 'Activer 2FA', disable_2fa: 'Désactiver 2FA', otp_qr_core_info: "Ouvrez l'application mobile authenticator et scannez ce code QR pour initialiser votre générateur de code PIN :",