/** * action delete * * @param \PoiCom\PcEventScheduler\Domain\Model\Holiday $holiday * @return void */ public function deleteAction(\PoiCom\PcEventScheduler\Domain\Model\Holiday $holiday) { if (!$this->div->isLoggedUserInGroup($this->settings['eventAdminGroupId'])) { $this->addFlashMessage($this->div->translate('message.noAdmin', $this->extensionName), '', \TYPO3\CMS\Core\Messaging\AbstractMessage::ERROR); $this->redirect('list'); } $this->addFlashMessage($this->div->translate('message.holidayDeleted', $this->extensionName), '', \TYPO3\CMS\Core\Messaging\AbstractMessage::OK); $this->holidayRepository->remove($holiday); $this->redirect('list'); }
/** * Create event * * @param \DateTime $eventStartDate * @return void */ public function createEvent($eventStartDate) { $eventEndTime = $this->settings['eventEndTime']; $eventLocation = $this->settings['defaultLocation']; $eventEndDate = clone $eventStartDate; $eventEndDate->setTime(substr($eventEndTime, 0, 2), substr($eventEndTime, 3, 2), '00'); $event = new \PoiCom\PcEventScheduler\Domain\Model\Event(); if ($this->dateInsideHoliday($eventStartDate)) { $event->setActive(FALSE); $event->setInactiveReason($this->holidayRepository->findByDate($eventStartDate)->getFirst()->getDescription()); } if (!$this->dateInsideHoliday($eventStartDate)) { $event->setActive(TRUE); } $event->setStart($eventStartDate); $event->setEnd($eventEndDate); $event->setLocation($eventLocation); $this->eventRepository->add($event); $this->persistenceManager->persistAll(); }