65 lines
2.2 KiB
TypeScript
65 lines
2.2 KiB
TypeScript
// server/api/admin/debug-rsvp-config.get.ts
|
|
import { createSessionManager } from '~/server/utils/session';
|
|
import { getEffectiveNocoDBConfig } from '~/server/utils/admin-config';
|
|
import { getEventTableId } from '~/server/utils/nocodb-events';
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
try {
|
|
// Verify admin session
|
|
const sessionManager = createSessionManager();
|
|
const cookieHeader = getHeader(event, 'cookie');
|
|
const session = sessionManager.getSession(cookieHeader);
|
|
|
|
if (!session?.user || session.user.tier !== 'admin') {
|
|
throw createError({
|
|
statusCode: 403,
|
|
statusMessage: 'Admin access required'
|
|
});
|
|
}
|
|
|
|
console.log('[admin/debug-rsvp-config] =========================');
|
|
console.log('[admin/debug-rsvp-config] 🔍 DEBUG: RSVP Configuration Analysis');
|
|
|
|
// Get effective config
|
|
const effectiveConfig = getEffectiveNocoDBConfig();
|
|
console.log('[admin/debug-rsvp-config] 🔍 Effective config:', JSON.stringify(effectiveConfig, null, 2));
|
|
|
|
// Test RSVP table ID retrieval
|
|
const rsvpTableId = getEventTableId('EventRSVPs');
|
|
console.log('[admin/debug-rsvp-config] 🔍 RSVP Table ID retrieved:', rsvpTableId);
|
|
|
|
// Test Events table ID retrieval
|
|
const eventsTableId = getEventTableId('Events');
|
|
console.log('[admin/debug-rsvp-config] 🔍 Events Table ID retrieved:', eventsTableId);
|
|
|
|
return {
|
|
success: true,
|
|
debug: {
|
|
effectiveConfig,
|
|
rsvpTableId,
|
|
eventsTableId,
|
|
availableTableKeys: Object.keys(effectiveConfig?.tables || {}),
|
|
rsvpTableInConfig: {
|
|
'rsvps': effectiveConfig?.tables?.['rsvps'],
|
|
'event_rsvps': effectiveConfig?.tables?.['event_rsvps'],
|
|
'EventRSVPs': effectiveConfig?.tables?.['EventRSVPs'],
|
|
'rsvp_table': effectiveConfig?.tables?.['rsvp_table'],
|
|
'RSVPs': effectiveConfig?.tables?.['RSVPs']
|
|
}
|
|
}
|
|
};
|
|
|
|
} catch (error: any) {
|
|
console.error('[admin/debug-rsvp-config] ❌ Error:', error);
|
|
|
|
if (error.statusCode) {
|
|
throw error;
|
|
}
|
|
|
|
throw createError({
|
|
statusCode: 500,
|
|
statusMessage: 'Failed to debug RSVP configuration'
|
|
});
|
|
}
|
|
});
|