diff --git a/server/api/series/[id]/tickets/available.get.js b/server/api/series/[id]/tickets/available.get.js index 784c6b1..4688dd8 100644 --- a/server/api/series/[id]/tickets/available.get.js +++ b/server/api/series/[id]/tickets/available.get.js @@ -39,7 +39,19 @@ export default defineEventHandler(async (event) => { // Check membership if email provided let member = null; - if (email) { + // Try auth cookie first for accurate member pricing + const token = getCookie(event, 'auth-token') + if (token) { + try { + const jwt = await import('jsonwebtoken') + const decoded = jwt.default.verify(token, useRuntimeConfig(event).jwtSecret) + member = await Member.findById(decoded.memberId) + } catch { + // Token invalid, fall through to email lookup + } + } + + if (!member && email) { member = await Member.findOne({ email: email.toLowerCase() }); }