/** * Implements hook_cron_alter(). */ public function cron_alter(&$jobs) { if (!variable_get($this->key . '_enabled', TRUE)) { unset($jobs['ultimate_cron_plugin_settings_queue_cleanup']); return; } $new_jobs = array(); foreach ($jobs as $job) { if (!$this->isValid($job)) { continue; } $settings = $job->getSettings(); if (isset($settings['settings']['queue']['name'])) { if ($settings['settings']['queue']['throttle']) { for ($i = 2; $i <= $settings['settings']['queue']['threads']; $i++) { $name = $job->name . '_' . $i; $hook = $job->hook; $hook['settings']['queue']['master'] = $job->name; $hook['settings']['queue']['thread'] = $i; $hook['name'] = $name; $hook['title'] .= " (#{$i})"; $hook['immutable'] = TRUE; $new_jobs[$name] = ultimate_cron_prepare_job($name, $hook); $new_jobs[$name]->settings = $settings + $new_jobs[$name]->settings; $new_jobs[$name]->title = $job->title . " (#{$i})"; } } } } $jobs += $new_jobs; $jobs['ultimate_cron_plugin_settings_queue_cleanup']->settings += array('scheduler' => array()); $jobs['ultimate_cron_plugin_settings_queue_cleanup']->settings['scheduler'] += array('crontab' => array(), 'simple' => array()); $jobs['ultimate_cron_plugin_settings_queue_cleanup']->settings['scheduler']['crontab'] += array('rules' => array('* * * * *')); $jobs['ultimate_cron_plugin_settings_queue_cleanup']->settings['scheduler']['simple'] += array('rules' => array('* * * * *')); }
/** * Implements hook_cron_alter(). */ public function cron_alter(&$jobs) { $new_jobs = array(); foreach ($jobs as $job) { if (!$this->isValid($job)) { continue; } $settings = $job->getSettings(); if (isset($settings['settings']['queue']['name'])) { if ($settings['settings']['queue']['throttle']) { for ($i = 2; $i <= $settings['settings']['queue']['threads']; $i++) { $name = $job->name . '_' . $i; $hook = $job->hook; $hook['settings']['queue']['master'] = $job->name; $hook['settings']['queue']['thread'] = $i; $hook['name'] = $name; $hook['title'] .= " (#{$i})"; $hook['immutable'] = TRUE; $new_jobs[$name] = ultimate_cron_prepare_job($name, $hook); $new_jobs[$name]->settings = $settings + $new_jobs[$name]->settings; $new_jobs[$name]->title = $job->title . " (#{$i})"; } } } } $jobs += $new_jobs; }