You are here

function purge_users_cron in Auto Purge Users 8.3

Same name and namespace in other branches
  1. 8 purge_users.module \purge_users_cron()
  2. 8.2 purge_users.module \purge_users_cron()
  3. 7.2 purge_users.module \purge_users_cron()
  4. 7 purge_users.module \purge_users_cron()

Implements hook_cron().

File

./purge_users.module, line 15
Purge users module file.

Code

function purge_users_cron() {
  $config = \Drupal::config('purge_users.settings');
  if ($config
    ->get('purge_on_cron') == 1) {
    $op = 'purge_users';
    $user_ids = purge_users_get_user_ids($op);

    // Add items to queue.
    $queue_factory = \Drupal::service('queue');
    $queue = $queue_factory
      ->get($op);

    // Process the queue till it is empty.
    if ($queue
      ->numberOfItems() == 0) {
      foreach ($user_ids as $user_id) {
        $queue
          ->createItem($user_id);
      }
    }
  }
  if ($config
    ->get('send_email_user_before_notification') == 1) {
    $op = 'notification_users';
    $user_ids = array_unique(purge_users_get_user_ids($op));

    // Add items to queue.
    $queue_factory = \Drupal::service('queue');
    $queue = $queue_factory
      ->get($op);

    // Process the queue till it is empty.
    if ($queue
      ->numberOfItems() == 0) {
      foreach ($user_ids as $user_id) {
        $queue
          ->createItem($user_id);
      }
    }
  }
}