Files
blackcanyontickets/verify-schema.cjs
dzinesco dbf4b11e81 fix: Implement comprehensive edit event button functionality and resolve authentication issues
Major fixes and improvements:
- Fixed edit event button functionality with proper event handlers and DOM ready state checking
- Added status column to tickets table via Supabase migration to resolve 500 API errors
- Updated stats API to correctly calculate revenue from decimal price values
- Resolved authentication redirect loops by fixing cookie configuration for Docker environment
- Fixed Permissions-Policy header syntax errors
- Added comprehensive debugging and error handling for event management
- Implemented modal-based event editing with form validation and API integration
- Enhanced event data loading with proper error handling and user feedback

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-14 18:49:49 -06:00

118 lines
3.5 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
const { createClient } = require('@supabase/supabase-js');
require('dotenv').config();
const supabaseUrl = process.env.PUBLIC_SUPABASE_URL;
const supabaseServiceKey = process.env.SUPABASE_SERVICE_ROLE_KEY;
if (!supabaseUrl || !supabaseServiceKey) {
console.error('❌ Missing required environment variables');
process.exit(1);
}
const supabase = createClient(supabaseUrl, supabaseServiceKey, {
auth: {
autoRefreshToken: false,
persistSession: false
}
});
async function verifySchema() {
console.log('🔍 Verifying database schema...');
try {
// Check if tables exist and what columns they have
const eventId = '7ac12bd2-8509-4db3-b1bc-98a808646311';
console.log('\n1⃣ Checking events table...');
const { data: eventData, error: eventError } = await supabase
.from('events')
.select('*')
.eq('id', eventId)
.single();
if (eventError) {
console.error('❌ Event query error:', eventError);
} else {
console.log('✅ Event found:', eventData.title);
console.log('Columns:', Object.keys(eventData));
}
console.log('\n2⃣ Checking ticket_types table...');
const { data: ticketTypesData, error: ticketTypesError } = await supabase
.from('ticket_types')
.select('*')
.eq('event_id', eventId)
.limit(1);
if (ticketTypesError) {
console.error('❌ Ticket types query error:', ticketTypesError);
} else {
console.log(`✅ Found ${ticketTypesData.length} ticket types`);
if (ticketTypesData.length > 0) {
console.log('Columns:', Object.keys(ticketTypesData[0]));
console.log('Sample:', ticketTypesData[0]);
}
}
console.log('\n3⃣ Checking tickets table...');
const { data: ticketsData, error: ticketsError } = await supabase
.from('tickets')
.select('*')
.eq('event_id', eventId)
.limit(1);
if (ticketsError) {
console.error('❌ Tickets query error:', ticketsError);
} else {
console.log(`✅ Found ${ticketsData.length} tickets`);
if (ticketsData.length > 0) {
console.log('Columns:', Object.keys(ticketsData[0]));
console.log('Sample:', ticketsData[0]);
}
}
console.log('\n4⃣ Testing the exact stats query...');
// Test the exact query from the stats API
const { data: testTickets, error: testError } = await supabase
.from('tickets')
.select(`
id,
ticket_type_id,
price,
checked_in,
scanned_at,
created_at
`)
.eq('event_id', eventId);
if (testError) {
console.error('❌ Stats query error:', testError);
} else {
console.log(`✅ Stats query successful: ${testTickets.length} tickets`);
if (testTickets.length > 0) {
console.log('Sample ticket:', testTickets[0]);
}
}
console.log('\n5⃣ Testing ticket types query...');
const { data: testTicketTypes, error: testTicketTypesError } = await supabase
.from('ticket_types')
.select('id, quantity_available, price, name')
.eq('event_id', eventId);
if (testTicketTypesError) {
console.error('❌ Ticket types stats query error:', testTicketTypesError);
} else {
console.log(`✅ Ticket types query successful: ${testTicketTypes.length} types`);
if (testTicketTypes.length > 0) {
console.log('Sample type:', testTicketTypes[0]);
}
}
} catch (error) {
console.error('💥 Unexpected error:', error);
}
}
verifySchema();