FluidTYPO3\Fluidcontent\Service\ConfigurationService::buildWizardTabItem PHP Method

buildWizardTabItem() protected method

Builds a single Wizard item (one FCE) based on the tab id, element id, configuration array and special template identity (groupName:Relative/Path/File.html)
protected buildWizardTabItem ( string $tabId, string $id, Form $form, string $templateFileIdentity ) : string
$tabId string
$id string
$form FluidTYPO3\Flux\Form
$templateFileIdentity string
return string
    protected function buildWizardTabItem($tabId, $id, $form, $templateFileIdentity)
    {
        if (TRUE === method_exists('FluidTYPO3\\Flux\\Utility\\MiscellaneousUtility', 'getIconForTemplate')) {
            $icon = MiscellaneousUtility::getIconForTemplate($form);
            $icon = $icon ? $icon : $this->defaultIcon;
        } else {
            $icon = $this->defaultIcon;
        }
        $description = $form->getDescription();
        if (0 === strpos($icon, '../')) {
            $icon = substr($icon, 2);
        }
        $iconIdentifier = NULL;
        if (TRUE === method_exists('FluidTYPO3\\Flux\\Utility\\MiscellaneousUtility', 'createIcon')) {
            if ('/' === $icon[0]) {
                $icon = realpath(PATH_site . $icon);
            }
            if (TRUE === file_exists($icon) && TRUE === is_file($icon)) {
                $extension = pathinfo($icon, PATHINFO_EXTENSION);
                switch (strtolower($extension)) {
                    case 'svg':
                    case 'svgz':
                        $iconProvider = SvgIconProvider::class;
                        break;
                    default:
                        $iconProvider = BitmapIconProvider::class;
                }
                $iconIdentifier = 'fluidcontent-' . $id;
                $iconRegistry = GeneralUtility::makeInstance(IconRegistry::class);
                $iconRegistry->registerIcon($iconIdentifier, $iconProvider, array('source' => $icon));
            }
        }
        $defaultValues = array();
        if ($form->hasOption(Form::OPTION_DEFAULT_VALUES)) {
            foreach ($form->getOption(Form::OPTION_DEFAULT_VALUES) as $key => $value) {
                $defaultValues[] = $key . ' = ' . $value;
            }
        }
        return sprintf('
			mod.wizards.newContentElement.wizardItems.%s.elements.%s {
				iconIdentifier = %s
				title = %s
				description = %s
				tt_content_defValues {
					%s
					CType = fluidcontent_content
					tx_fed_fcefile = %s
				}
			}
			', $tabId, $id, $iconIdentifier, $form->getLabel(), $description, implode(chr(10), $defaultValues), $templateFileIdentity);
    }