/**
  * @param RZ\Roadiz\Core\Entities\Setting $setting
  *
  * @return \Symfony\Component\Form\Form
  */
 private function buildEditForm(Setting $setting)
 {
     $defaults = ['id' => $setting->getId(), 'name' => $setting->getName(), 'value' => $setting->getValue(), 'visible' => $setting->isVisible(), 'type' => $setting->getType()];
     if ($setting->getType() == NodeTypeField::DOCUMENTS_T) {
         $defaults['value'] = null;
     }
     if (null !== $setting->getSettingGroup()) {
         $defaults['settingGroup'] = $setting->getSettingGroup()->getId();
     }
     $builder = $this->createFormBuilder($defaults)->add('name', 'text', ['label' => 'name', 'constraints' => [new NotBlank()]])->add('id', 'hidden', ['data' => $setting->getId(), 'required' => true])->add('value', Setting::$typeToForm[$setting->getType()], static::getFormOptionsForSetting($setting, $this->getTranslator()))->add('visible', 'checkbox', ['label' => 'visible', 'required' => false])->add('type', 'choice', ['label' => 'type', 'required' => true, 'choices' => Setting::$typeToHuman])->add('settingGroup', new \RZ\Roadiz\CMS\Forms\SettingGroupType(), ['label' => 'setting.group']);
     return $builder->getForm();
 }