Force target '_blank' in registration 'terms and conditions', 'data privacy' links by 'PageParamsLink'

This commit is contained in:
Wolfgang Huß 2023-06-14 13:20:56 +02:00
parent c5ec22a6f2
commit 53d3a921bf
2 changed files with 10 additions and 5 deletions

View File

@ -89,11 +89,11 @@
<label for="checkbox0"> <label for="checkbox0">
{{ $t('components.registration.create-user-account.termsAndCondsEtcConfirmed') }} {{ $t('components.registration.create-user-account.termsAndCondsEtcConfirmed') }}
<br /> <br />
<page-params-link :pageParams="links.TERMS_AND_CONDITIONS"> <page-params-link :pageParams="links.TERMS_AND_CONDITIONS" :forceTargetBlank="true">
{{ $t('site.termsAndConditions') }} {{ $t('site.termsAndConditions') }}
</page-params-link> </page-params-link>
<br /> <br />
<page-params-link :pageParams="links.DATA_PRIVACY"> <page-params-link :pageParams="links.DATA_PRIVACY" :forceTargetBlank="true">
{{ $t('site.data-privacy') }} {{ $t('site.data-privacy') }}
</page-params-link> </page-params-link>
</label> </label>

View File

@ -1,6 +1,6 @@
<template> <template>
<nuxt-link <nuxt-link
v-if="pageParams.isInternalPage" v-if="!forceTargetBlank && pageParams.isInternalPage"
:to="pageParams.internalPage.pageRoute" :to="pageParams.internalPage.pageRoute"
:data-test="pageParams.name + '-nuxt-link'" :data-test="pageParams.name + '-nuxt-link'"
> >
@ -8,8 +8,12 @@
</nuxt-link> </nuxt-link>
<a <a
v-else v-else
:href="pageParams.externalLink.url" :href="
:target="pageParams.externalLink.target" pageParams.isInternalPage ? pageParams.internalPage.pageRoute : pageParams.externalLink.url
"
:target="
forceTargetBlank ? '_blank' : pageParams.isInternalPage ? '' : pageParams.externalLink.target
"
:data-test="pageParams.name + '-link'" :data-test="pageParams.name + '-link'"
> >
<slot /> <slot />
@ -21,6 +25,7 @@ export default {
name: 'PageParamsLink', name: 'PageParamsLink',
props: { props: {
pageParams: { type: Object, required: true }, pageParams: { type: Object, required: true },
forceTargetBlank: { type: Boolean, default: false },
}, },
} }
</script> </script>