/**
  * Handle the subscribed event.
  *
  * @param GetGroupHeaderEvent $event The event.
  *
  * @return void
  */
 public static function handle(GetGroupHeaderEvent $event)
 {
     if ($event->getValue() !== null) {
         return;
     }
     $handler = new static();
     $value = $handler->formatGroupHeader($event->getEnvironment(), $event->getModel(), $event->getGroupField(), $event->getGroupingMode(), $event->getGroupingLength());
     if ($value !== null) {
         $event->setValue($value);
     }
 }
示例#2
0
 /**
  * @param GetGroupHeaderEvent $event
  */
 public function getGroupHeader(GetGroupHeaderEvent $event)
 {
     if ($event->getModel()->getProviderName() != 'orm_avisota_message') {
         return;
     }
     $environment = $event->getEnvironment();
     $translator = $environment->getTranslator();
     /** @var EntityModel $model */
     $model = $event->getModel();
     /** @var \Avisota\Contao\Entity\Message $message */
     $message = $model->getEntity();
     if ($message->getCategory()->getBoilerplates()) {
         $language = $translator->translate($message->getLanguage(), 'LNG');
         $event->setValue($language);
     } else {
         if ($model->getProperty('sendOn')) {
             $parseDateEvent = new ParseDateEvent($message->getSendOn()->getTimestamp(), 'F Y');
             /** @var EventDispatcher $eventDispatcher */
             $eventDispatcher = $GLOBALS['container']['event-dispatcher'];
             $eventDispatcher->dispatch(ContaoEvents::DATE_PARSE, $parseDateEvent);
             $event->setValue($parseDateEvent->getResult());
         } else {
             $event->setValue($translator->translate('notSend', 'orm_avisota_message'));
         }
     }
 }
示例#3
0
 /**
  * @param GetGroupHeaderEvent $event
  * @SuppressWarnings(PHPMD.Superglobals)
  */
 public function getGroupHeader(GetGroupHeaderEvent $event)
 {
     if ($event->getModel()->getProviderName() != 'orm_avisota_message_content') {
         return;
     }
     $environment = $event->getEnvironment();
     $translator = $environment->getTranslator();
     $model = $event->getModel();
     $cell = $translator->translate('cells.' . $model->getProperty('cell'), 'orm_avisota_message_content');
     $event->setValue($cell);
 }