Add Category entity, edit event tabs (info/categories/stats/settings), CRUD categories

- Create Category entity: name, position (sortable), event, startAt, endAt, isActive()
- Default endAt: event.startAt - 1 day
- Add 4 tabs on edit event page: Informations, Categories/Billets, Statistiques, Parametres
- Add routes: add category, delete category, reorder categories (JSON API)
- Categories sorted by position, drag handle for future Sortable.js
- Active/Inactive badge based on date range
- Add migration for category table

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Serreau Jovann
2026-03-20 22:51:25 +01:00
parent 847fc437de
commit 42ded8fbbe
7 changed files with 353 additions and 11 deletions

View File

@@ -567,7 +567,7 @@ class AccountControllerTest extends WebTestCase
'is_online' => '1',
]);
self::assertResponseRedirects('/mon-compte?tab=events');
self::assertResponseRedirects('/mon-compte/evenement/'.$event->getId().'/modifier');
}
public function testEditEventDeniedForOtherUser(): void
@@ -715,7 +715,7 @@ class AccountControllerTest extends WebTestCase
'city' => 'Paris',
], ['event_main_picture' => $picture]);
self::assertResponseRedirects('/mon-compte?tab=events');
self::assertResponseRedirects();
}
public function testEditEventWithPicture(): void
@@ -755,7 +755,7 @@ class AccountControllerTest extends WebTestCase
'city' => 'Lyon',
], ['event_main_picture' => $picture]);
self::assertResponseRedirects('/mon-compte?tab=events');
self::assertResponseRedirects();
}
public function testEventsSearchReturnsSuccess(): void