add("submit", SubmitType::class, [ "label" => ($options["mode"]=="delete"?"Confirmer la Suppression":"Valider"), "attr" => ($options["mode"]=="delete"?array("class" => "btn btn-danger"):array("class" => "btn btn-success")) ]) ->add("title", TextType::class, [ "label" => "Titre", "disabled" => ($options["mode"]=="delete"?true:false), ]) ->add("subtitle", TextareaType::class, [ "label" => 'Sous Titre', "required" => false, "disabled" => ($options["mode"]=="delete"?true:false), "attr" => array("rows" => '4') ]) ->add("content",CKEditorType::class,[ "config_name" => 'full_config', "label" => 'Description', "required" => false, "disabled" => ($options["mode"]=="delete"?true:false), "config" => array("height" => "500px") ]) ->add("itemcategory", EntityType::class, [ "label" => 'Catégorie', "class" => 'CadolesPortalBundle:Itemcategory', "choice_label" => 'label', "placeholder" => '-- Sélectionnez une Catégorie --', "disabled" => ($options["mode"]=="delete"?true:false), ]) ->add('roles', ChoiceType::class, [ "label" => 'Visible pour les Rôles', "choices" => [ "Visiteur" => 'ROLE_ANONYME', "Utilisateur" => 'ROLE_USER', "Animateur de Groupe" => 'ROLE_ANIM', "Modérateur" => 'ROLE_MODO', "Administateur" => 'ROLE_ADMIN', ], "multiple" => true, "expanded" => true, "disabled" => ($options["mode"]=="delete"?true:false), ]) ->add('niveau01s', Select2EntityType::class, [ 'label' => 'Visible pour les '.$options["labelniveau01"], 'class' => 'CadolesCoreBundle:Niveau01', 'text_property' => 'label', 'multiple' => true, 'remote_route' => 'cadoles_core_ajax_niveau01_list', 'primary_key' => 'id', 'text_property' => 'label', 'minimum_input_length' => 0, 'page_limit' => 100, 'allow_clear' => true, 'delay' => 250, 'cache' => false, 'cache_timeout' => 60000, 'language' => 'fr', 'placeholder' => 'Selectionner des '.$options["labelniveau01"], ]) ->add('groups', Select2EntityType::class, [ 'label' => 'Visible pour les Groupes', 'class' => 'CadolesCoreBundle:Group', 'text_property' => 'label', 'multiple' => true, 'remote_route' => 'cadoles_core_ajax_group_list', 'primary_key' => 'id', 'text_property' => 'label', 'minimum_input_length' => 0, 'page_limit' => 100, 'allow_clear' => true, 'delay' => 250, 'cache' => false, 'cache_timeout' => 60000, 'language' => 'fr', 'placeholder' => 'Selectionner des groupes', ]) ->add('color', TextType::class, [ 'label' => "Couleur", 'required' => false, 'attr' => array("class" => "pick-a-color") ]) ->add('url') ->add('protected', CheckboxType::class, [ "label" => "Force l'authentification de l'utilisateur ?", "required" => false ]) ->add('essential', CheckboxType::class, [ "label" => "Item essentiel ?", "required" => false ]) ->add('target', ChoiceType::class, [ "label" => 'Ouvrir le lien dans', "choices" => [ "Nouvel onglet/fenêtre" => '_blank', "iFrame" => 'frame', "Onglet courant" => '_self', ] ]) ->add('idicon', HiddenType::class,['mapped'=> false,'data' => $options["idicon"]]); if($options["ssosynchroitem"]) { $builder->add("ssoitem", TextType::class, [ "label" => "Visible si attribut SSO ".$options["user_attr_cas_item"]." égale à", "disabled" => ($options["mode"]=="delete"?true:false), ]); } } public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ 'data_class' => 'Cadoles\PortalBundle\Entity\Item', 'mode' => "string", 'idicon' => "string", 'labelniveau01' => "string", 'ssosynchroitem' => "string", 'user_attr_cas_item' => "string", ]); } }