protected function AssetInjectorAccessControlHandler::resolveThemeConditions in Asset Injector 8.2
Resolve only current_theme condition plugins.
Parameters
\Drupal\asset_injector\AssetInjectorInterface $entity: The asset with theme conditions.
Return value
bool If the theme condition resolves true or not.
Throws
\Drupal\Component\Plugin\Exception\PluginException
1 call to AssetInjectorAccessControlHandler::resolveThemeConditions()
- AssetInjectorAccessControlHandler::checkAccess in src/AssetInjectorAccessControlHandler.php 
- Performs access checks.
File
- src/AssetInjectorAccessControlHandler.php, line 149 
Class
- AssetInjectorAccessControlHandler
- Defines the access control handler for the asset_injector entity types.
Namespace
Drupal\asset_injectorCode
protected function resolveThemeConditions(AssetInjectorInterface $entity) {
  $conditions = $entity
    ->getConditionsCollection();
  $theme_conditions = [];
  // If no current theme condition, return true.
  if (!$conditions
    ->has('current_theme')) {
    return TRUE;
  }
  /** @var \Drupal\system\Plugin\Condition\CurrentThemeCondition $theme_condition */
  $theme_condition = $conditions
    ->get('current_theme');
  $config = $theme_condition
    ->getConfig();
  foreach ($config['theme'] as $theme) {
    $new_theme_conditions = clone $theme_condition;
    $new_theme_conditions
      ->setConfig('theme', $theme);
    $conditions
      ->set("current_theme_{$theme}", $new_theme_conditions);
    $theme_conditions[] = $new_theme_conditions;
  }
  $logic = $config['negate'] ? 'and' : 'or';
  return $this
    ->resolveConditions($theme_conditions, $logic);
}