![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/plugins/MauticSocialBundle/EventListener/ |
<?php namespace MauticPlugin\MauticSocialBundle\EventListener; use Mautic\ConfigBundle\ConfigEvents; use Mautic\ConfigBundle\Event\ConfigBuilderEvent; use Mautic\ConfigBundle\Event\ConfigEvent; use MauticPlugin\MauticSocialBundle\Form\Type\ConfigType; use MauticPlugin\MauticSocialBundle\Integration\Config; use Symfony\Component\EventDispatcher\EventSubscriberInterface; class ConfigSubscriber implements EventSubscriberInterface { public function __construct(private Config $config) { } public static function getSubscribedEvents(): array { return [ ConfigEvents::CONFIG_ON_GENERATE => ['onConfigGenerate', 0], ConfigEvents::CONFIG_PRE_SAVE => ['onConfigSave', 0], ]; } public function onConfigGenerate(ConfigBuilderEvent $event): void { if (!$this->config->isPublished()) { return; } $event->addForm( [ 'formAlias' => 'social_config', 'formTheme' => '@MauticSocial/FormTheme/Config/_config_social_config_widget.html.twig', 'formType' => ConfigType::class, 'parameters' => $event->getParametersFromConfig('MauticSocialBundle'), ] ); } public function onConfigSave(ConfigEvent $event): void { /** @var array $values */ $values = $event->getConfig(); // Manipulate the values if (!empty($values['social_config']['twitter_handle_field'])) { $values['social_config']['twitter_handle_field'] = htmlspecialchars($values['social_config']['twitter_handle_field']); } // Set updated values $event->setConfig($values); } }