You are here

function lti_tool_provider_outcomes_remove_all_outcomes_by_user in LTI Tool Provider 7

Removes all Outcomes for a user id.

Invoked when hook_user_(delete|cancel) are called.

Parameters

int $uid: User entity uid

1 call to lti_tool_provider_outcomes_remove_all_outcomes_by_user()
lti_tool_provider_outcomes_user_delete in lti_tool_provider_outcomes/lti_tool_provider_outcomes.module
Implements hook_user_delete().

File

lti_tool_provider_outcomes/lti_tool_provider_outcomes.module, line 527

Code

function lti_tool_provider_outcomes_remove_all_outcomes_by_user($uid) {
  $results_arr = array();
  $query = new EntityFieldQuery();
  $query
    ->entityCondition('entity_type', 'lti_tool_provider_outcomes')
    ->propertyCondition('lti_tool_provider_outcomes_user_id', $uid);
  $result = $query
    ->execute();
  $entity_type = 'lti_tool_provider_outcomes';
  if (!empty($result[$entity_type])) {
    $outcomes = entity_load($entity_type, array_keys($result[$entity_type]));
    entity_get_controller($entity_type)
      ->deleteMultiple($outcomes);
    drupal_set_message(check_plain(t('Outcomes for user: [@uid] removed.', array(
      '@uid' => $uid,
    ))));
  }
}