diff --git masquerade.module masquerade.module index 4efe0ea..75ebaae 100644 --- masquerade.module +++ masquerade.module @@ -640,6 +640,12 @@ function masquerade_switch_user($uid) { $new_user = user_load(array('uid' => $uid)); + // Check to see if user is blocked + if (!empty($new_user->uid) && empty($new_user->status)) { + drupal_set_message(t('User %user most be active in order to masquerade as.', array('%user' => $new_user->name)), 'error'); + watchdog('masquerade', 'User %user most be active in order to masquerade as.', array('%user' => $new_user->name), WATCHDOG_ERROR); + return FALSE; + } + $roles = array_keys(array_filter(variable_get('masquerade_admin_roles', array()))); $perm = $uid == 1 || array_intersect(array_keys($new_user->roles), $roles) ? 'masquerade as admin' :