fix(activities): buy-tickets login toast gets a Log in action button
Matches the pattern already used by BookmarkButton, RSVPButton, and ActivitiesFavoritesPage — the auth-prompt toast carries an inline "Log in" action that pushes /login. The buy-tickets toast was the odd one out, leaving the buyer to find the login route themselves. Also lifts the message + button label into i18n (activities.detail.loginToBuyTickets, .logIn) so es/fr aren't English-on-top.
This commit is contained in:
parent
aa2e573f0e
commit
f92d4090dd
5 changed files with 14 additions and 1 deletions
|
|
@ -107,6 +107,8 @@ const messages: LocaleMessages = {
|
|||
viewMyTickets: 'View in My Tickets',
|
||||
soldOut: 'Sold Out',
|
||||
pastEvent: 'This event has already happened',
|
||||
loginToBuyTickets: 'Log in to buy tickets',
|
||||
logIn: 'Log in',
|
||||
free: 'Free',
|
||||
},
|
||||
tickets: {
|
||||
|
|
|
|||
|
|
@ -107,6 +107,8 @@ const messages: LocaleMessages = {
|
|||
viewMyTickets: 'Ver en Mis boletos',
|
||||
soldOut: 'Agotado',
|
||||
pastEvent: 'Este evento ya pasó',
|
||||
loginToBuyTickets: 'Inicia sesión para comprar boletos',
|
||||
logIn: 'Iniciar sesión',
|
||||
free: 'Gratis',
|
||||
},
|
||||
tickets: {
|
||||
|
|
|
|||
|
|
@ -107,6 +107,8 @@ const messages: LocaleMessages = {
|
|||
viewMyTickets: 'Voir dans Mes billets',
|
||||
soldOut: 'Épuisé',
|
||||
pastEvent: 'Cet événement est déjà passé',
|
||||
loginToBuyTickets: 'Connectez-vous pour acheter des billets',
|
||||
logIn: 'Connexion',
|
||||
free: 'Gratuit',
|
||||
},
|
||||
tickets: {
|
||||
|
|
|
|||
|
|
@ -82,6 +82,8 @@ export interface LocaleMessages {
|
|||
viewMyTickets: string
|
||||
soldOut: string
|
||||
pastEvent: string
|
||||
loginToBuyTickets: string
|
||||
logIn: string
|
||||
free: string
|
||||
}
|
||||
tickets: {
|
||||
|
|
|
|||
|
|
@ -145,7 +145,12 @@ const showPurchaseDialog = ref(false)
|
|||
|
||||
function openPurchaseDialog() {
|
||||
if (!isAuthenticated.value) {
|
||||
toastService.info('Log in to buy tickets')
|
||||
toastService.info(t('activities.detail.loginToBuyTickets'), {
|
||||
action: {
|
||||
label: t('activities.detail.logIn'),
|
||||
onClick: () => router.push('/login'),
|
||||
},
|
||||
})
|
||||
return
|
||||
}
|
||||
showPurchaseDialog.value = true
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue