function index($slug, $id, Request $request, Application $app) { if (!$this->buildEvent($slug, $id, $request, $app)) { $app->abort(404, "Import does not exist."); } if ($this->parameters['importedEvent']->hasReoccurence()) { $this->parameters['importedEventReoccurs'] = true; $this->parameters['eventListFilterParams'] = new EventFilterParams(); // set some defaults that are different from normal $this->parameters['eventListFilterParams']->setIncludeDeleted(true); $this->parameters['eventListFilterParams']->setFromNow(false); // now carry on ... $this->parameters['eventListFilterParams']->set($_GET); $this->parameters['eventListFilterParams']->getEventRepositoryBuilder()->setSite($app['currentSite']); $this->parameters['eventListFilterParams']->getEventRepositoryBuilder()->setIncludeAreaInformation(true); $this->parameters['eventListFilterParams']->getEventRepositoryBuilder()->setIncludeVenueInformation(true); // Technically we should be able to do this ... but to keep the UI simple, lets not. //if ($app['currentUser'])) { // $this->parameters['eventListFilterParams']->getEventRepositoryBuilder()->setUserAccount($app['currentUser'], true); //} $this->parameters['eventListFilterParams']->getEventRepositoryBuilder()->setImportedEvent($this->parameters['importedEvent']); $this->parameters['events'] = $this->parameters['eventListFilterParams']->getEventRepositoryBuilder()->fetchAll(); $this->parameters['event'] = null; } else { $this->parameters['importedEventReoccurs'] = false; $this->parameters['eventListFilterParams'] = null; $this->parameters['events'] = null; $eventRepo = new EventRepository(); $this->parameters['event'] = $eventRepo->loadByImportedEvent($this->parameters['importedEvent']); } return $app['twig']->render('site/importurlimportedevent/index.html.twig', $this->parameters); }
/** @var EventModel **/ protected function loadEventForImportedEvent(ImportedEventModel $importedEvent) { $eventRepo = new \repositories\EventRepository(); // Try new way $event = $eventRepo->loadByImportedEvent($importedEvent); if ($event) { return $event; } // Try old way - flags on event table - and if found, set data for new way $event = $eventRepo->loadByImportURLIDAndImportId($importedEvent->getImportUrlId(), $importedEvent->getImportId()); if ($event) { // Save this data as the new way $repo = new ImportedEventIsEventRepository(); $repo->createLink($importedEvent, $event); // .... and return return $event; } // Give up return null; }