/** * Import data from JMP file */ public function importAction() { $importer = new \Application\Service\Importer(); $importer->setEntityManager($this->getEntityManager()); $calendars = $this->getEntityManager()->getRepository(\Application\Model\Calendar::class)->getAllNeedingImport(); $column = 50; echo str_pad('calendar', $column) . ' events' . PHP_EOL; foreach ($calendars as $calendar) { echo str_pad($calendar->getId() . ' ' . $calendar->getName(), $column) . ' '; $importer->import($calendar); echo str_pad($calendar->getEvents()->count(), 4, ' ', STR_PAD_LEFT) . PHP_EOL; } }
public function importAction() { $event = $this->getEvent(); $inputFilter = $event->getParam('ZF\\ContentValidation\\InputFilter'); $calendarId = $inputFilter->getValues(); $calendar = $this->getEntityManager()->getRepository(\Application\Model\Calendar::class)->findOneById($calendarId); if (!$calendar) { throw new \ZF\ApiProblem\Exception\DomainException('Calendar not found', 404); } $importer = new \Application\Service\Importer(); $importer->setEntityManager($this->getEntityManager()); $importer->import($calendar); return new JsonModel(['message' => $calendar->getEvents()->count() . ' events imported']); }