civicrm_entity-8.x-3.0-beta1/src/Hook/RulesHooks.php

src/Hook/RulesHooks.php
<?php

namespace Drupal\civicrm_entity\Hook;

use Drupal\Core\Hook\Attribute\Hook;

/**
 * Hook implementations for rules.
 */
class RulesHooks {

  /**
   * Implements hook_rules_action_info_alter().
   */
  #[Hook('rules_action_info_alter')]
  public function rulesActionInfoAlter(array &$rules_actions): void {
    $definitions = \Drupal::service('plugin.manager.typed_data_filter')->getDefinitions();
    $filters = "";
    foreach ($definitions as $key) {
      if ($key['provider'] == 'civicrm_entity') {
        $filters .= ($filters == '' ? '' : ', ') . $key['id'];
      }
    }
    if (array_key_exists('format', $rules_actions['civicrm_entity_user_create']['context_definitions'])) {
      // Drupal 9 use 'context_definitions' instead of 'context'.
      $rules_actions['civicrm_entity_user_create']['context_definitions']['format']->setDescription(t('Format of the username. Use <a href="@url">Twig style</a> tokens for using the available data.<br>Civicrm Entity filter available : @filters.',
        [
          '@url' => 'https://www.drupal.org/docs/8/modules/typed-data-api-enhancements/typeddata-tokens',
          '@filters' => $filters,
        ]));
    }
    else {
      $rules_actions['civicrm_entity_user_create']['context']['format']->setDescription(t('Format of the username. Use <a href="@url">Twig style</a> tokens for using the available data.<br>Civicrm Entity filter available : @filters.',
        [
          '@url' => 'https://www.drupal.org/docs/8/modules/typed-data-api-enhancements/typeddata-tokens',
          '@filters' => $filters,
        ]));
    }
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc