mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-21 23:31:11 -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
|
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 {
|
} else {
|
||||||
// For regular entities, use name field
|
// For regular entities, use name field
|
||||||
entityName = itemData.name || originalData?.name || 'Unknown';
|
entityName = itemData.name || originalData?.name || 'Unknown';
|
||||||
|
|||||||
Reference in New Issue
Block a user