refactor(events): replace parties concept with events throughout the application

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

This commit refactors the entire application to replace the 'parties' concept with 'events'. All controllers, models, views, and related files have been updated to reflect this change. The parties table has been replaced with an events table, and all related functionality has been updated accordingly.
This commit is contained in:
Kevin BATAILLE
2025-08-28 13:20:51 +02:00
parent 2f80fe8321
commit 30f3ecc6ad
218 changed files with 864 additions and 787 deletions

0
docs/application-optimization.md Normal file → Executable file
View File

48
docs/architecture.md Normal file → Executable file
View File

@@ -2,7 +2,7 @@
## Overview
Aperonight is a Ruby on Rails web application designed for proposing night parties in Paris and allowing party makers to create their own events. The application serves two primary user groups:
Aperonight is a Ruby on Rails web application designed for proposing night parties in Paris and allowing event makers to create their own events. The application serves two primary user groups:
### For Customers:
- View upcoming and past parties
@@ -30,8 +30,8 @@ create_table :users do |t|
t.timestamps
end
# Party - Events created by promoters
create_table :parties do |t|
# Event - Events created by promoters
create_table :events do |t|
t.string :name
t.text :description
t.datetime :start_time
@@ -46,7 +46,7 @@ create_table :ticket_types do |t|
t.string :name
t.text :description
t.decimal :price
t.integer :party_id
t.integer :event_id
t.timestamps
end
@@ -54,7 +54,7 @@ end
create_table :tickets do |t|
t.string :uuid
t.string :qr_code
t.integer :party_id
t.integer :event_id
t.integer :user_id
t.integer :ticket_type_id
t.boolean :used, default: false
@@ -83,19 +83,19 @@ class User < ApplicationRecord
has_many :parties, foreign_key: 'promoter_id'
end
class Party < ApplicationRecord
class Event < ApplicationRecord
belongs_to :promoter, class_name: 'User'
has_many :tickets
has_many :ticket_types
end
class TicketType < ApplicationRecord
belongs_to :party
belongs_to :event
has_many :tickets
end
class Ticket < ApplicationRecord
belongs_to :party
belongs_to :event
belongs_to :user
belongs_to :ticket_type
has_one :payment
@@ -143,25 +143,25 @@ end
```ruby
class PartiesController < ApplicationController
before_action :authenticate_user!
before_action :set_party, only: [:show, :edit, :update, :destroy]
before_action :set_event, only: [:show, :edit, :update, :destroy]
def index
@parties = Party.all
@parties = Event.all
end
def show
@ticket_types = @party.ticket_types
@ticket_types = @event.ticket_types
end
def new
@party = Party.new
@party.ticket_types.build
@event = Event.new
@event.ticket_types.build
end
def create
@party = current_user.parties.build(party_params)
if @party.save
redirect_to @party, notice: 'Party was successfully created.'
@event = current_user.parties.build(event_params)
if @event.save
redirect_to @event, notice: 'Event was successfully created.'
else
render :new
end
@@ -169,12 +169,12 @@ class PartiesController < ApplicationController
private
def set_party
@party = Party.find(params[:id])
def set_event
@event = Event.find(params[:id])
end
def party_params
params.require(:party).permit(
def event_params
params.require(:event).permit(
:name, :description, :start_time, :end_time, :location,
ticket_types_attributes: [:id, :name, :description, :price, :_destroy]
)
@@ -186,7 +186,7 @@ end
```ruby
class TicketsController < ApplicationController
before_action :authenticate_user!
before_action :set_party, only: [:new, :create]
before_action :set_event, only: [:new, :create]
def new
@ticket = Ticket.new
@@ -217,12 +217,12 @@ class TicketsController < ApplicationController
private
def set_party
@party = Party.find(params[:party_id])
def set_event
@event = Event.find(params[:event_id])
end
def ticket_params
params.require(:ticket).permit(:ticket_type_id, :party_id)
params.require(:ticket).permit(:ticket_type_id, :event_id)
end
end
```

0
docs/branch-naming.md Normal file → Executable file
View File

0
docs/creating-shadcn-react-components.md Normal file → Executable file
View File

0
docs/theme-rules.md Normal file → Executable file
View File

0
docs/theme-rules.md.old Normal file → Executable file
View File