/** * Set the value in the event. * * @param ModelToLabelEvent $event The event being emitted. * * @param string $value The label text to use. * * @return void */ public function update($event, $value) { if ($value === null) { return; } $event->setLabel($value); }
/** * Draw the render setting. * * @param ModelToLabelEvent $event The event. * * @return void */ public function modelToLabel(ModelToLabelEvent $event) { if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_dca_sortgroup') { return; } if ($event->getModel()->getProperty('isdefault')) { $event->setLabel(sprintf('%s <span style="color:#b3b3b3; padding-left:3px">[%s]</span>', $event->getLabel(), $event->getEnvironment()->getTranslator()->translate('MSC.fallback'))); } }
/** * Draw the render setting. * * @param ModelToLabelEvent $event The event. * * @return void * * @SuppressWarnings(PHPMD.Superglobals) * @SuppressWarnings(PHPMD.CamelCaseVariableName) */ public function modelToLabel(ModelToLabelEvent $event) { if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_rendersettings') { return; } if ($event->getModel()->getProperty('isdefault')) { $event->setLabel($event->getLabel() . ' <span style="color:#b3b3b3; padding-left:3px">[' . $GLOBALS['TL_LANG']['MSC']['fallback'] . ']</span>'); } }
/** * Render a filter setting into html. * * @param ModelToLabelEvent $event The event. * * @return void */ public function modelToLabel(ModelToLabelEvent $event) { if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_filtersetting' || in_array($event->getModel()->getProperty('type'), $this->getTypes())) { return; } $environment = $event->getEnvironment(); $model = $event->getModel(); $event->setLabel($this->getLabelPattern($environment, $model))->setArgs($this->getLabelParameters($environment, $model)); }
/** * Draw a legend. * * @param ModelToLabelEvent $event The event. * * @return void * * @SuppressWarnings(PHPMD.Superglobals) * @SuppressWarnings(PHPMD.CamelCaseVariableName) */ protected function drawLegend(ModelToLabelEvent $event) { $model = $event->getModel(); $arrLegend = deserialize($model->getProperty('legendtitle')); if (is_array($arrLegend)) { $strLegend = $arrLegend[$GLOBALS['TL_LANGUAGE']]; if (!$strLegend) { // TODO: Get the fallback language here. $strLegend = 'legend'; } } else { $strLegend = $model->getProperty('legendtitle') ? $model->getProperty('legendtitle') : 'legend'; } $event->setLabel('<div class="field_heading cte_type %s"><strong>%s</strong></div> <div class="dca_palette">%s%s</div>')->setArgs(array($model->getProperty('published') ? 'published' : 'unpublished', $GLOBALS['TL_LANG']['tl_metamodel_dcasetting']['dcatypes']['legend'], $strLegend, $model->getProperty('legendhide') ? ':hide' : '')); }
/** * Render the html for the input screen condition. * * @param ModelToLabelEvent $event The event. * * @return void * * @SuppressWarnings(PHPMD.Superglobals) * @SuppressWarnings(PHPMD.CamelCaseVariableName) */ public function handleModelToLabel(ModelToLabelEvent $event) { if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_dcasetting_condition') { return; } $environment = $event->getEnvironment(); $translator = $environment->getTranslator(); $model = $event->getModel(); $metaModels = $this->getMetaModel($environment); $attribute = $metaModels->getAttributeById($model->getProperty('attr_id')); $type = $model->getProperty('type'); $parameterValue = is_array($model->getProperty('value')) ? implode(', ', $model->getProperty('value')) : $model->getProperty('value'); $name = $translator->translate('conditionnames.' . $type, 'tl_metamodel_dcasetting_condition'); $image = $GLOBALS['METAMODELS']['attributes'][$type]['image']; if (!$image || !file_exists(TL_ROOT . '/' . $image)) { $image = 'system/modules/metamodels/assets/images/icons/filter_default.png'; } /** @var GenerateHtmlEvent $imageEvent */ $imageEvent = $event->getEnvironment()->getEventDispatcher()->dispatch(ContaoEvents::IMAGE_GET_HTML, new GenerateHtmlEvent($image)); $event->setLabel($this->getLabelText($translator, $type))->setArgs(array($imageEvent->getHtml(), $name, $attribute ? $attribute->getName() : '', $parameterValue)); }
/** * Create label for recipient. * * @param ModelToLabelEvent $event * * @return string * @SuppressWarnings(PHPMD.LongVariable) * @SuppressWarnings(PHPMD.CamelCaseVariableName) */ public function createLabel(ModelToLabelEvent $event) { if ($event->getModel()->getProviderName() != 'orm_avisota_recipient') { return; } global $container; /** @var EntityModel $model */ $model = $event->getModel(); /** @var \Avisota\Contao\Entity\Recipient $recipient */ $recipient = $model->getEntity(); /** @var EventDispatcher $eventDispatcher */ $eventDispatcher = $container['event-dispatcher']; $label = $this->addExpandFoldIconToLabel($eventDispatcher); $label .= $this->addRecipientToLabel($recipient); $label .= $this->addAddedByToLabel($recipient); $label .= $this->addSubscriptionToLabel($recipient, $eventDispatcher); $event->setLabel($label); }
/** * Draw the attribute in the backend listing. * * @param ModelToLabelEvent $event The event. * * @return void */ public function modelToLabel(ModelToLabelEvent $event) { if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_attribute') { return; } $services = $this->getServiceContainer(); $factory = $services->getAttributeFactory(); $model = $event->getModel(); $type = $model->getProperty('type'); $image = '<img src="' . $factory->getIconForType($type) . '" />'; $metaModel = $this->getMetaModelByModelPid($model); $attribute = $factory->createAttribute($model->getPropertiesAsArray(), $metaModel); if (!$attribute) { $translator = $event->getEnvironment()->getTranslator(); $event->setLabel('<div class="field_heading cte_type"><strong>%s</strong> <em>[%s]</em></div> <div class="field_type block"> <strong>%s</strong><br /> </div>')->setArgs(array($translator->translate('error_unknown_attribute.0', 'tl_metamodel_attribute'), $type, $translator->translate('error_unknown_attribute.1', 'tl_metamodel_attribute', array($type)))); return; } $colName = $attribute->getColName(); $name = $attribute->getName(); $arrDescription = deserialize($attribute->get('description')); if (is_array($arrDescription)) { $description = $arrDescription[$attribute->getMetaModel()->getActiveLanguage()]; if (!$description) { $description = $arrDescription[$attribute->getMetaModel()->getFallbackLanguage()]; } } else { $description = $attribute->getName(); } $event->setLabel('<div class="field_heading cte_type"><strong>%s</strong> <em>[%s]</em></div> <div class="field_type block"> %s<strong>%s</strong> - %s </div>')->setArgs(array($colName, $type, $image, $name, $description)); }
/** * Draw the render setting. * * @param ModelToLabelEvent $event The event. * * @return void * * @SuppressWarnings(PHPMD.Superglobals) * @SuppressWarnings(PHPMD.CamelCaseVariableName) */ public function modelToLabel(ModelToLabelEvent $event) { if ($event->getEnvironment()->getDataDefinition()->getName() !== 'tl_metamodel_rendersetting') { return; } $model = $event->getModel(); $attribute = $this->getMetaModel($model)->getAttributeById($model->getProperty('attr_id')); if ($attribute) { $type = $attribute->get('type'); $image = $GLOBALS['METAMODELS']['attributes'][$type]['image']; if (!$image || !file_exists(TL_ROOT . '/' . $image)) { $image = 'system/modules/metamodels/assets/images/icons/fields.png'; } $name = $attribute->getName(); $colName = $attribute->getColName(); } else { $translator = $event->getEnvironment()->getTranslator(); $image = 'system/modules/metamodels/assets/images/icons/fields.png'; $name = $translator->translate('error_unknown_id', 'error_unknown_attribute'); $colName = $translator->translate('error_unknown_column', 'error_unknown_attribute'); $type = $translator->translate('error_unknown_id', 'tl_metamodel_rendersettings', array($model->getProperty('attr_id'))); } /** @var GenerateHtmlEvent $imageEvent */ $imageEvent = $event->getEnvironment()->getEventDispatcher()->dispatch(ContaoEvents::IMAGE_GET_HTML, new GenerateHtmlEvent($image)); $event->setLabel('<div class="field_heading cte_type %s"><strong>%s</strong> <em>[%s]</em></div> <div class="field_type block"> %s<strong>%s</strong> </div>')->setArgs(array($model->getProperty('enabled') ? 'published' : 'unpublished', $colName, $type, $imageEvent->getHtml(), $name)); }