Sortable tests, deduplicate event hydration, disable php:S1448
- Add sortable.js tests (12 tests): drag/drop, reorder, early returns, edge cases - Use target.before()/after() instead of list.insertBefore() in sortable.js - Extract hydrateEventFromRequest() to eliminate duplicated code in createEvent/editEvent - Disable SonarQube rule php:S1448 (too many methods per class) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -301,18 +301,7 @@ class AccountController extends AbstractController
|
||||
if ($request->isMethod('POST')) {
|
||||
$event = new Event();
|
||||
$event->setAccount($user);
|
||||
$event->setTitle(trim($request->request->getString('title')));
|
||||
$event->setDescription(trim($request->request->getString('description')) ?: null);
|
||||
$event->setStartAt(new \DateTimeImmutable($request->request->getString('start_at')));
|
||||
$event->setEndAt(new \DateTimeImmutable($request->request->getString('end_at')));
|
||||
$event->setAddress(trim($request->request->getString('address')));
|
||||
$event->setZipcode(trim($request->request->getString('zipcode')));
|
||||
$event->setCity(trim($request->request->getString('city')));
|
||||
|
||||
$pictureFile = $request->files->get('event_main_picture');
|
||||
if ($pictureFile) {
|
||||
$event->setEventMainPictureFile($pictureFile);
|
||||
}
|
||||
$this->hydrateEventFromRequest($event, $request);
|
||||
|
||||
$em->persist($event);
|
||||
$em->flush();
|
||||
@@ -345,17 +334,7 @@ class AccountController extends AbstractController
|
||||
}
|
||||
|
||||
if ($request->isMethod('POST')) {
|
||||
$event->setTitle(trim($request->request->getString('title')));
|
||||
$event->setDescription(trim($request->request->getString('description')) ?: null);
|
||||
$event->setStartAt(new \DateTimeImmutable($request->request->getString('start_at')));
|
||||
$event->setEndAt(new \DateTimeImmutable($request->request->getString('end_at')));
|
||||
$event->setAddress(trim($request->request->getString('address')));
|
||||
$event->setZipcode(trim($request->request->getString('zipcode')));
|
||||
$event->setCity(trim($request->request->getString('city')));
|
||||
$pictureFile = $request->files->get('event_main_picture');
|
||||
if ($pictureFile) {
|
||||
$event->setEventMainPictureFile($pictureFile);
|
||||
}
|
||||
$this->hydrateEventFromRequest($event, $request);
|
||||
|
||||
$em->flush();
|
||||
|
||||
@@ -665,4 +644,20 @@ class AccountController extends AbstractController
|
||||
'Content-Disposition' => 'inline; filename="attestation_'.$payout->getStripePayoutId().'.pdf"',
|
||||
]);
|
||||
}
|
||||
|
||||
private function hydrateEventFromRequest(Event $event, Request $request): void
|
||||
{
|
||||
$event->setTitle(trim($request->request->getString('title')));
|
||||
$event->setDescription(trim($request->request->getString('description')) ?: null);
|
||||
$event->setStartAt(new \DateTimeImmutable($request->request->getString('start_at')));
|
||||
$event->setEndAt(new \DateTimeImmutable($request->request->getString('end_at')));
|
||||
$event->setAddress(trim($request->request->getString('address')));
|
||||
$event->setZipcode(trim($request->request->getString('zipcode')));
|
||||
$event->setCity(trim($request->request->getString('city')));
|
||||
|
||||
$pictureFile = $request->files->get('event_main_picture');
|
||||
if ($pictureFile) {
|
||||
$event->setEventMainPictureFile($pictureFile);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user