You are here

function user_badges_add_blocked_badge in User Badges 7.4

Ensures all users who are blocked have the blocked badge.

File

./user_badges.module, line 1194
Hooks and other stuff related to user badge.

Code

function user_badges_add_blocked_badge($bid) {
  $user_badge = user_badge_load($bid);
  $query = db_select('users', 'u');
  $sub_query = db_select('user_badges_assignment', 'ub')
    ->fields('ub', array(
    'uid',
  ))
    ->condition('bid', $bid, '=');
  $results = $query
    ->fields('u', array(
    'uid',
  ))
    ->condition('status', 0, '=')
    ->condition('uid', 1, '>')
    ->condition('uid', $sub_query, 'NOT IN')
    ->execute()
    ->fetchCol();
  foreach ($results as $uid) {
    user_badges_user_add_badge($uid, $bid, 2, $user_badge->weight, 0);
  }
}