You are here

function social_advanced_queue_install in Open Social 10.3.x

Same name and namespace in other branches
  1. 10.1.x modules/custom/social_advanced_queue/social_advanced_queue.install \social_advanced_queue_install()
  2. 10.2.x modules/custom/social_advanced_queue/social_advanced_queue.install \social_advanced_queue_install()

Implements hook_install().

Perform actions related to the installation of social_advanced_queue.

File

modules/custom/social_advanced_queue/social_advanced_queue.install, line 13
Install and update hooks for Social Swiftmailer.

Code

function social_advanced_queue_install() {

  // Get ultimate_cron.job.advancedqueue_cron settings.
  $os_default_crons = [
    'advancedqueue_cron',
    'activity_send_email_cron',
    'activity_creator_cron',
  ];

  // Update the default scheduler time to 1 minute for activity related cron.
  foreach ($os_default_crons as $config_name) {
    $ultimate_cron_config = \Drupal::configFactory()
      ->getEditable('ultimate_cron.job.' . $config_name);
    if ($ultimate_cron_config !== NULL) {

      // Set default cron time for advanced queue.
      $data = $ultimate_cron_config
        ->getRawData();
      if (!empty($data['scheduler'])) {
        $data['scheduler'] = [
          'id' => 'simple',
          'configuration' => [
            'rules' => [
              '* * * * *',
            ],
          ],
        ];
      }
      $ultimate_cron_config
        ->setData($data)
        ->save();
    }
  }
}