Fix: Re-evaluate initial submission validation

This commit is contained in:
gpt-engineer-app[bot]
2025-11-06 00:11:31 +00:00
parent 2b56629a75
commit 0f8e98a85a
3 changed files with 150 additions and 27 deletions

View File

@@ -557,6 +557,14 @@ export async function submitParkCreation(
data: ParkFormData & { _compositeSubmission?: any },
userId: string
): Promise<{ submitted: boolean; submissionId: string }> {
console.info('[submitParkCreation] Received data:', {
hasLocation: !!data.location,
hasLocationId: !!data.location_id,
locationData: data.location,
parkName: data.name,
hasComposite: !!data._compositeSubmission
});
// Validate required fields client-side
assertValid(validateParkCreateFields(data));
@@ -663,6 +671,25 @@ export async function submitParkCreation(
const cardImage = (cardIndex !== null && cardIndex !== undefined) ? uploadedImages[cardIndex] : null;
// Insert into relational park_submissions table
const tempLocationData = data.location ? {
name: data.location.name,
city: data.location.city || null,
state_province: data.location.state_province || null,
country: data.location.country,
latitude: data.location.latitude,
longitude: data.location.longitude,
timezone: data.location.timezone || null,
postal_code: data.location.postal_code || null,
display_name: data.location.display_name
} : null;
console.info('[submitParkCreation] Saving to park_submissions:', {
name: data.name,
hasLocation: !!data.location,
hasLocationId: !!data.location_id,
temp_location_data: tempLocationData
});
const { data: parkSubmission, error: parkSubmissionError } = await supabase
.from('park_submissions' as any)
.insert({
@@ -680,17 +707,7 @@ export async function submitParkCreation(
operator_id: data.operator_id || null,
property_owner_id: data.property_owner_id || null,
location_id: data.location_id || null,
temp_location_data: data.location ? {
name: data.location.name,
city: data.location.city || null,
state_province: data.location.state_province || null,
country: data.location.country,
latitude: data.location.latitude,
longitude: data.location.longitude,
timezone: data.location.timezone || null,
postal_code: data.location.postal_code || null,
display_name: data.location.display_name
} : null,
temp_location_data: tempLocationData,
banner_image_url: bannerImage?.url || data.banner_image_url || null,
banner_image_id: bannerImage?.cloudflare_id || data.banner_image_id || null,
card_image_url: cardImage?.url || data.card_image_url || null,