mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
Thx page shows content dependent of route from
This commit is contained in:
parent
41ba384c51
commit
76c7708829
@ -85,7 +85,9 @@
|
||||
},
|
||||
"thx": {
|
||||
"title": "Danke!",
|
||||
"subtitle": "Wir haben dir eine eMail gesendet."
|
||||
"email": "Wir haben dir eine eMail gesendet.",
|
||||
"reset": "Dein Passwort wurde geändert",
|
||||
"register": "Du bist jetzt regisriert"
|
||||
},
|
||||
"overview":{
|
||||
"account_overview":"Kontoübersicht",
|
||||
|
||||
@ -85,7 +85,9 @@
|
||||
},
|
||||
"thx": {
|
||||
"title": "Thank you!",
|
||||
"subtitle": "We have sent you an email."
|
||||
"email": "We have sent you an email.",
|
||||
"reset": "Your password has been changed",
|
||||
"register": "You are registred now"
|
||||
},
|
||||
"overview":{
|
||||
"account_overview":"Account overview",
|
||||
|
||||
@ -49,6 +49,14 @@ const routes = [
|
||||
{
|
||||
path: '/thx',
|
||||
component: () => import('../views/Pages/thx.vue'),
|
||||
beforeEnter: (to, from, next) => {
|
||||
const validFrom = ['/password', '/reset', '/register']
|
||||
if (!validFrom.includes(from.path)) {
|
||||
next({ path: '/login' })
|
||||
} else {
|
||||
next()
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/password',
|
||||
|
||||
@ -107,6 +107,10 @@ export default {
|
||||
const result = await loginAPI.changePassword(this.sessionId, this.email, this.password)
|
||||
if (result.success) {
|
||||
this.password = ''
|
||||
this.$store.dispatch('login', {
|
||||
sessionId: result.result.data.session_id,
|
||||
email: result.result.data.user.email,
|
||||
})
|
||||
this.$router.push('/thx')
|
||||
} else {
|
||||
alert(result.result.message)
|
||||
|
||||
@ -5,12 +5,54 @@
|
||||
<b-container>
|
||||
<div class="header-body text-center mb-7">
|
||||
<p class="h1">{{ $t('site.thx.title') }}</p>
|
||||
<p class="h4">{{ $t('site.thx.subtitle') }}</p>
|
||||
<p class="h4">{{ $t(displaySetup.subtitle) }}</p>
|
||||
<hr />
|
||||
<b-button to="/login">{{ $t('login') }}</b-button>
|
||||
<b-button :to="displaySetup.linkTo">{{ $t(displaySetup.button) }}</b-button>
|
||||
</div>
|
||||
</b-container>
|
||||
</div>
|
||||
<!-- Page content -->
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
const textFields = {
|
||||
'/password': {
|
||||
subtitle: 'site.thx.email',
|
||||
button: 'login',
|
||||
linkTo: '/login',
|
||||
},
|
||||
'/reset': {
|
||||
subtitle: 'site.thx.reset',
|
||||
button: 'site.login.signin',
|
||||
linkTo: '/overview',
|
||||
},
|
||||
'/register': {
|
||||
subtitle: 'site.thx.register',
|
||||
button: 'site.login.signin',
|
||||
linkTo: '/overview',
|
||||
},
|
||||
}
|
||||
|
||||
export default {
|
||||
name: 'Thx',
|
||||
data() {
|
||||
return {
|
||||
comingFrom: null,
|
||||
displaySetup: {},
|
||||
}
|
||||
},
|
||||
beforeRouteEnter(to, from, next) {
|
||||
next((vm) => {
|
||||
vm.comingFrom = from.path
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
setupDisplay() {
|
||||
this.displaySetup = textFields[this.comingFrom]
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.setupDisplay()
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user