mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-21 16:31:13 -05:00
Fix milestone entity name resolution
This commit is contained in:
@@ -369,6 +369,49 @@ export async function detectChanges(
|
||||
has_cloudflare_url: !!itemData.cloudflare_image_url
|
||||
});
|
||||
}
|
||||
} else if (item.item_type === 'milestone') {
|
||||
// Milestone submissions reference entity_id and entity_type
|
||||
// Need to fetch the entity name from the database
|
||||
if (itemData.entity_type && itemData.entity_id) {
|
||||
try {
|
||||
const entityType = itemData.entity_type;
|
||||
const entityId = itemData.entity_id;
|
||||
|
||||
if (entityType === 'park') {
|
||||
const { data } = await supabase.from('parks').select('name').eq('id', entityId).maybeSingle();
|
||||
if (data?.name) {
|
||||
entityName = `${data.name} - ${itemData.title || 'Milestone'}`;
|
||||
}
|
||||
} else if (entityType === 'ride') {
|
||||
const { data: rideData } = await supabase
|
||||
.from('rides')
|
||||
.select('name, park:parks(name)')
|
||||
.eq('id', entityId)
|
||||
.maybeSingle();
|
||||
|
||||
if (rideData?.name) {
|
||||
const parkName = rideData.park?.name;
|
||||
entityName = parkName
|
||||
? `${rideData.name} at ${parkName} - ${itemData.title || 'Milestone'}`
|
||||
: `${rideData.name} - ${itemData.title || 'Milestone'}`;
|
||||
}
|
||||
}
|
||||
|
||||
// If lookup failed, fall back to title with entity type
|
||||
if (entityName === 'Unknown' && itemData.title) {
|
||||
entityName = `${formatEntityType(entityType)} - ${itemData.title}`;
|
||||
}
|
||||
} catch (err) {
|
||||
console.error('Error fetching entity name for milestone:', err);
|
||||
// Fall back to just the title if database lookup fails
|
||||
if (itemData.title) {
|
||||
entityName = itemData.title;
|
||||
}
|
||||
}
|
||||
} else if (itemData.title) {
|
||||
// No entity reference, just use the milestone title
|
||||
entityName = itemData.title;
|
||||
}
|
||||
} else {
|
||||
// For regular entities, use name field
|
||||
entityName = itemData.name || originalData?.name || 'Unknown';
|
||||
|
||||
Reference in New Issue
Block a user