function ultimate_cron_prepare_job in Ultimate Cron 7.2
Prepare a UltimateCronJob object with hook data, etc.
Parameters
string $name: Name of the job.
array $hook: The cron hook data from hook_cronapi(), etc.
UltimateCronJob $job: (optional) The job to prepare with the hook data. If no job is given, a new blank UltimateCronJob object will be used.
Return value
UltimateCronJob The prepared UltimateCronJob object.
2 calls to ultimate_cron_prepare_job()
- UltimateCronQueueSettings::cron_alter in plugins/ultimate_cron/ settings/ queue.class.php 
- Implements hook_cron_alter().
- _ultimate_cron_job_load_all in ./ultimate_cron.module 
- CTools Export load all callback.
File
- ./ultimate_cron.module, line 434 
Code
function ultimate_cron_prepare_job($name, $hook, $job = NULL) {
  $schema = ctools_export_get_schema('ultimate_cron_job');
  $export = $schema['export'];
  if (!$job) {
    $job = ctools_export_crud_new('ultimate_cron_job');
    $job->name = $name;
    $job->title = $hook['title'];
    $job->description = $hook['description'];
    $job->table = 'ultimate_cron_job';
    $job->export_type = EXPORT_IN_CODE;
    $job->{$export['export type string']} = t('Default');
    $job->disabled = ultimate_cron_job_get_status($name);
    if (!isset($job->disabled)) {
      $job->disabled = !$hook['enabled'];
    }
  }
  else {
    // If object lives in database, then it is overridden, since we do not
    // have objects living only in the database.
    if ($job->export_type & EXPORT_IN_DATABASE) {
      $job->{$export['export type string']} = t('Overridden');
      $job->export_type |= EXPORT_IN_CODE;
    }
  }
  // We do alot of += on arrays. Let's make sure we have an array to begin with.
  ctools_include('plugins');
  $plugin_types = ctools_plugin_get_plugin_type_info();
  foreach ($plugin_types['ultimate_cron'] as $plugin_type => $info) {
    $class = $info['defaults']['static']['class'];
    if ($class::$multiple) {
      $plugins = _ultimate_cron_plugin_load_all($plugin_type);
      foreach ($plugins as $plugin) {
        if (!isset($job->settings[$plugin_type][$plugin->name])) {
          $job->settings[$plugin_type][$plugin->name] = array();
        }
      }
    }
    else {
      if (!isset($job->settings[$plugin_type])) {
        $job->settings[$plugin_type] = array();
      }
    }
  }
  $job->hook = $hook;
  return $job;
}