/**
  * Creates an Event object based on a DB row.
  *
  * @param array $row The DB row containing Event data.
  * @return \GoldenTicket\Domain\Event
  */
 protected function buildDomainObject($row)
 {
     $event = new Event();
     $event->setNum($row['num_event']);
     $event->setName($row['name_event']);
     $event->setMinimalPrice($row['minimalPrice_event']);
     $event->setStartDate($row['startDate_event']);
     $event->setStartHour($row['startHour_event']);
     $event->setEndDate($row['endDate_event']);
     $event->setEndHour($row['endHour_event']);
     $event->setDesc($row['desc_event']);
     $type = $this->findType($row['num_ET']);
     $event->setType($type);
     $event->setStatus($row['num_status']);
     $event->setCoverImageLink($row['coverImage_event']);
     return $event;
 }
 /**
  * API create event controller.
  *
  * @param Request $request Incoming request
  * @param Application $app Silex application
  *
  * @return Event details in JSON format
  */
 public function addEventAction(Request $request, Application $app)
 {
     // Check request parameters
     if (!$request->request->has('name')) {
         return $app->json('Missing required parameter: name', 400);
     }
     if (!$request->request->has('desc')) {
         return $app->json('Missing required parameter: desc', 400);
     }
     // Build and save the new event
     $event = new Event();
     $event->setName($request->request->get('name'));
     $event->setDesc($request->request->get('desc'));
     $app['dao.event']->save($event);
     $responseData = $this->buildEventArray($event);
     return $app->json($responseData, 201);
     // 201 = Created
 }