/**
  * 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');
 }
Пример #2
0
 /**
  * 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();
 }