*/ class SettingEventSubscriber extends EventSubscriber { protected SettingManager $manager; public function __construct(SettingManager $manager) { $this->manager = $manager; } public function onInit(SettingEvent $event) { $this->manager->init('blog_footer', '๐Ÿฅพ Pied de page', 'Contenu', ''); $this->manager->init('avatar_image', '๐Ÿ‘ฆ Avatar', 'Image', ''); $this->manager->init('email_sender', '๐Ÿค– E-mail', 'Expรฉditeur', ''); $this->manager->init('email_contact', '๐Ÿค– E-mail', 'Destinataire formulaire de contact', ''); $this->manager->init('email_comment', '๐Ÿค– E-mail', 'Destinataire nouveau commentaire', ''); $this->manager->init('stats_umami_url', '๐Ÿ“Š Statistiques', 'Adresse tableau de bord Umami', ''); $this->manager->init('stats_umami_tag', '๐Ÿ“Š Statistiques', 'Script Umami', ''); $this->manager->init('stats_grafana_url', '๐Ÿ“Š Statistiques', 'Adresse tableau de bord Grafana', ''); $this->manager->init('post_author_description', '๐Ÿ–Š๏ธ Article', 'Description auteur', ''); // $this->manager->init('giphy_api_key', '๐ŸŒ API', 'Clรฉ d\'API Giphy', ''); } public function onFormInit(SettingEvent $event) { $data = $event->getData(); $builder = $data['builder']; $entity = $data['entity']; if (in_array($entity->getCode(), ['email_sender', 'email_contact', 'email_comment'])) { $builder->add( 'value', EmailType::class, [ 'label' => $entity->getLabel(), ] ); } if (in_array($entity->getCode(), ['avatar_image'])) { $builder->add( 'value', FilePickerType::class, [ 'label' => $entity->getLabel(), ] ); } if (in_array($entity->getCode(), ['giphy_api_key', 'stats_umami_url', 'stats_grafana_url'])) { $builder->add( 'value', TextType::class, [ 'label' => $entity->getLabel(), ] ); } if (in_array($entity->getCode(), ['stats_umami_tag'])) { $event->setOption('view', 'large'); $builder->add( 'value', TextareaType::class, [ 'label' => $entity->getLabel(), 'attr' => [ 'rows' => 3, ], ] ); } if (in_array($entity->getCode(), ['post_author_description'])) { $event->setOption('view', 'large'); $builder->add( 'value', TextareaType::class, [ 'label' => $entity->getLabel(), 'attr' => [ 'rows' => 20, ], ] ); } if (in_array($entity->getCode(), ['blog_footer'])) { $event->setOption('view', 'large'); $builder->add( 'value', TinymceTextareaType::class, [ 'label' => $entity->getLabel(), 'attr' => [ 'rows' => 20, ], ] ); } } }