public function run(ImportedEventOccurrenceModel $importedEventOccurrenceModel) { $eventRepo = new EventRepository(); $eventRecurSetRepo = new EventRecurSetRepository(); if ($importedEventOccurrenceModel->hasReoccurence()) { // Have to load it looking for the right time to! $event = $this->loadEventForImportedReoccurredEvent($importedEventOccurrenceModel); } else { // just load it. $event = $this->loadEventForImportedEvent($importedEventOccurrenceModel); } if ($event) { $this->eventsSeenIDs[] = $event->getId(); // Set Existing Event From Import Event URL if ($importedEventOccurrenceModel->getIsDeleted()) { if (!$event->getIsDeleted()) { $eventRepo->delete($event); return true; } } else { if ($event->setFromImportedEventModel($importedEventOccurrenceModel) || $event->getIsDeleted()) { $event->setIsDeleted(false); $eventRepo->edit($event); return true; } } } else { if (!$this->importURL->getIsManualEventsCreation()) { // New Event From Import Event URL $event = $this->newEventFromImportedEventModel($importedEventOccurrenceModel); if ($this->eventRecurSet) { $event->setEventRecurSetId($this->eventRecurSet->getId()); } $eventRepo->create($event, $this->site, null, $this->group, null, $importedEventOccurrenceModel); $this->eventsSeenIDs[] = $event->getId(); if (!$this->eventRecurSet && $this->makeEventRecurSetIfNone) { $this->eventRecurSet = $eventRecurSetRepo->getForEvent($event); } return true; } else { return false; } } return false; }