You are here

function _scheduler_get_scheduler_enabled_node_types in Scheduler 8

Returns all content types for which scheduler has been enabled.

Parameters

string $action: The action that needs to be checked. Can be 'publish' or 'unpublish'.

Return value

\Drupal\node\NodeTypeInterface[] Array of NodeTypeInterface objects

5 calls to _scheduler_get_scheduler_enabled_node_types()
SchedulerManager::publish in src/SchedulerManager.php
Publish scheduled nodes.
SchedulerManager::unpublish in src/SchedulerManager.php
Unpublish scheduled nodes.
scheduler_form_devel_generate_form_content_alter in ./scheduler.module
Implements hook_form_FORM_ID_alter() for devel_generate_form_content.
scheduler_node_presave in ./scheduler.module
Implements hook_ENTITY_TYPE_presave() for node entities.
_scheduler_translation_validate in ./scheduler.module
Validation handler for language_content_settings_form.

File

./scheduler.module, line 724
Scheduler publishes and unpublishes nodes on dates specified by the user.

Code

function _scheduler_get_scheduler_enabled_node_types($action) {
  $config = \Drupal::config('scheduler.settings');
  $node_types = NodeType::loadMultiple();
  return array_filter($node_types, function ($bundle) use ($action, $config) {

    /** @var \Drupal\node\NodeTypeInterface $bundle */
    return $bundle
      ->getThirdPartySetting('scheduler', $action . '_enable', $config
      ->get('default_' . $action . '_enable'));
  });
}