MentionsInsert.php in Open Social 10.1.x
Same filename and directory in other branches
- 8.9 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.2 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.3 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.4 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.5 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.6 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.7 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 8.8 modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 10.3.x modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 10.0.x modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
- 10.2.x modules/custom/mentions/src/EventSubscriber/MentionsInsert.php
Namespace
Drupal\mentions\EventSubscriberFile
modules/custom/mentions/src/EventSubscriber/MentionsInsert.phpView source
<?php
namespace Drupal\mentions\EventSubscriber;
use Drupal\Core\Config\ConfigFactory;
use Drupal\Core\Entity\EntityTypeManagerInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
/**
* MentionsInsert handles event 'mentions.insert'.
*/
class MentionsInsert implements EventSubscriberInterface {
/**
* The entity type manager interface.
*
* @var \Drupal\Core\Entity\EntityTypeManagerInterface
*/
protected $entityTypeManager;
/**
* The config factory.
*
* @var \Drupal\Core\Config\ConfigFactory
*/
protected $configFactory;
/**
* MentionsInsert constructor.
*
* @param \Drupal\Core\Config\ConfigFactory $config_factory
* The config factory.
* @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
* The entity type manager interface.
*/
public function __construct(ConfigFactory $config_factory, EntityTypeManagerInterface $entity_type_manager) {
$this->configFactory = $config_factory;
$this->entityTypeManager = $entity_type_manager;
}
/**
* {@inheritdoc}
*/
public static function getSubscribedEvents() {
$events['mentions.insert'][] = [
'onMentionsInsert',
0,
];
return $events;
}
/**
* Event Handler.
*/
public function onMentionsInsert($event) {
$config = $this->configFactory
->get('mentions.settings');
$config_mentions_events = $config
->get('mentions_events');
$action_id = $config_mentions_events['insert'];
if (empty($action_id)) {
return;
}
$entity_storage = $this->entityTypeManager
->getStorage('action');
$action = $entity_storage
->load($action_id);
if ($action === NULL) {
return;
}
$action_plugin = $action
->getPlugin();
if (!empty($action_plugin)) {
$action_plugin
->execute(FALSE);
}
}
}
Classes
Name | Description |
---|---|
MentionsInsert | MentionsInsert handles event 'mentions.insert'. |