You are here

function rules_element_invoke_component_validate in Rules 7.2

Validate callback to make sure the invoked component exists and is not dirty.

See also

rules_scheduler_action_schedule_validate()

Related topics

File

modules/rules_core.rules.inc, line 297
Rules integration with Drupal core.

Code

function rules_element_invoke_component_validate(RulesPlugin $element) {
  $info = $element
    ->info();
  $component = rules_config_load($info['#config_name']);

  // Check if a component exists.
  if (!$component) {
    throw new RulesIntegrityException(t('The component %config does not exist.', array(
      '%config' => $info['#config_name'],
    )), $element);
  }

  // Check if a component is marked as dirty.
  rules_config_update_dirty_flag($component);
  if (!empty($component->dirty)) {
    throw new RulesIntegrityException(t('The utilized component %config fails the integrity check.', array(
      '%config' => $info['#config_name'],
    )), $element);
  }
}