*/ final class StatusField implements FieldInterface { use FieldTrait; public static function new(string $propertyName, ?string $label = null, bool $templateToggle = true): self { $field = (new self()) ->setProperty($propertyName) ->setLabel($label) ->setFormType(ChoiceType::class) ->setFormTypeOption('expanded', true) ->setFormTypeOption('multiple', false) ->setFormTypeOption('choices', ['En ligne' => 1, 'Hors ligne' => 0]) ->setFormTypeOption('placeholder', false) ->setCustomOption('toggle_label', 'En ligne') ->setCustomOption('filter_fqcn', CheckboxFilter::class); $template = 'toggle.html.twig'; if (!$templateToggle) { $template = 'status.html.twig'; } $field->setTemplatePath('@LcSov/adminlte/crud/field/' . $template); return $field; } }