Skip to content

Commit c7729d4

Browse files
authored
feat: soldout tickets (#981)
1 parent 8d3944a commit c7729d4

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

app/pages/ticket/index.vue

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ const localeRoute = useLocaleRoute();
3333
const isSoldOutAfterParty = import.meta.vfFeatures.soldOutAfterParty;
3434
const isSoldOutEarlyBirdAfterParty = import.meta.vfFeatures.soldOutEarlyBirdAfterParty || import.meta.vfFeatures.soldOutEarlyBird;
3535
const isSoldOutEarlyBird = import.meta.vfFeatures.soldOutEarlyBird;
36+
const isSoldOutGeneral = import.meta.vfFeatures.soldOutGeneral;
37+
const isSoldOutHandsOn = import.meta.vfFeatures.soldOutHandsOn;
38+
const isSoldOutIndividualSponsor = import.meta.vfFeatures.soldOutIndividualSponsor;
3639
3740
const isLoading = ref(false);
3841
@@ -94,9 +97,10 @@ useSeoMeta({
9497
<span class="ticket-badge-price">
9598
<!-- eslint-disable-next-line @intlify/vue-i18n/no-raw-text -->
9699
<span class="ticket-badge-price-type">{{ t('ticket.standard') }}</span>
97-
<span class="ticket-badge-price-value">
100+
<span class="ticket-badge-price-value" :class="{ 'sold-out': isSoldOutGeneral }">
98101
<span class="ticket-badge-price-unit" :class="locale">{{ t("ticket.priceUnit") }}</span>{{ (Number(t('ticket.generalTicket.standardPrice'))).toLocaleString() }}
99102
</span>
103+
<span v-if="isSoldOutGeneral" class="sold-out-label">{{ t('ticket.soldOut') }}</span>
100104
</span>
101105
</div>
102106
</div>
@@ -147,9 +151,10 @@ useSeoMeta({
147151
</h2>
148152
<div class="ticket-badge-prices">
149153
<span class="ticket-badge-price">
150-
<span class="ticket-badge-price-value">
154+
<span class="ticket-badge-price-value" :class="{ 'sold-out': isSoldOutHandsOn }">
151155
<span class="ticket-badge-price-unit" :class="locale">{{ t("ticket.priceUnit") }}</span>{{ (Number(t('ticket.handsOn.price'))).toLocaleString() }}
152156
</span>
157+
<span v-if="isSoldOutHandsOn" class="sold-out-label">{{ t('ticket.soldOut') }}</span>
153158
</span>
154159
</div>
155160
</div>
@@ -172,9 +177,10 @@ useSeoMeta({
172177
</h2>
173178
<div class="ticket-badge-prices">
174179
<span class="ticket-badge-price">
175-
<span class="ticket-badge-price-value">
180+
<span class="ticket-badge-price-value" :class="{ 'sold-out': isSoldOutIndividualSponsor }">
176181
<span class="ticket-badge-price-unit" :class="locale">{{ t("ticket.priceUnit") }}</span>{{ (Number(t('ticket.individual.price'))).toLocaleString() }}
177182
</span>
183+
<span v-if="isSoldOutIndividualSponsor" class="sold-out-label">{{ t('ticket.soldOut') }}</span>
178184
</span>
179185
</div>
180186
</div>

nuxt.config.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,9 +129,14 @@ export default defineNuxtConfig({
129129
featureFlags: {
130130
timetable: process.env.CONTEXT !== "production",
131131
staff: process.env.CONTEXT !== "production",
132+
132133
soldOutAfterParty: true,
133134
soldOutEarlyBirdAfterParty: true,
134-
soldOutEarlyBird: process.env.CONTEXT !== "production", // turn on it at 9/1
135+
soldOutEarlyBird: process.env.CONTEXT !== "production", // turn it on at 9/1
136+
soldOutGeneral: false, // turn on when sold out
137+
soldOutHandsOn: false, // turn on when sold out
138+
soldOutIndividualSponsor: false, // turn on when sold out
139+
135140
guestDetailsEvan: false,
136141
guestDetailsDaniel: process.env.CONTEXT !== "production",
137142
guestDetailsJohnson: process.env.CONTEXT !== "production",

0 commit comments

Comments
 (0)