Merge branch 'fix/image-upload' into feat/image-upload

This commit is contained in:
kbe
2025-10-01 08:37:57 +02:00
11 changed files with 274 additions and 78 deletions

View File

@@ -73,6 +73,33 @@ module Api
private
# Helper method to serialize event data safely
def event_json(event)
{
id: event.id,
name: event.name,
slug: event.slug,
description: event.description,
state: event.state,
venue_name: event.venue_name,
venue_address: event.venue_address,
start_time: event.start_time,
end_time: event.end_time,
latitude: event.latitude,
longitude: event.longitude,
featured: event.featured,
image_url: event.display_image_url,
created_at: event.created_at,
updated_at: event.updated_at,
user: {
id: event.user.id,
email: event.user.email,
first_name: event.user.first_name,
last_name: event.user.last_name
}
}
end
# Finds an event by its ID or returns 404 Not Found
# Used as before_action for the show, update, and destroy actions
def set_event

View File

@@ -45,6 +45,8 @@ class Promoter::EventsController < ApplicationController
if @event.update(event_params)
redirect_to promoter_event_path(@event), notice: "Event mis à jour avec succès!"
else
# If validation fails and a new image was attached, purge it
@event.image.purge if @event.image.attached? && @event.changed.include?('image')
render :edit, status: :unprocessable_entity
end
end
@@ -132,10 +134,18 @@ class Promoter::EventsController < ApplicationController
end
def event_params
params.require(:event).permit(
:name, :slug, :description, :image,
:venue_name, :venue_address, :latitude, :longitude,
:start_time, :end_time, :featured, :allow_booking_during_event
)
if action_name == 'create'
params.require(:event).permit(
:name, :slug, :description, :image,
:venue_name, :venue_address, :latitude, :longitude,
:start_time, :end_time, :featured, :allow_booking_during_event
)
else
params.require(:event).permit(
:name, :description, :image,
:venue_name, :venue_address, :latitude, :longitude,
:start_time, :end_time, :featured, :allow_booking_during_event
)
end
end
end