function lti_tool_provider_memberships_get_dropped_memberships in LTI Tool Provider 7
Extract the dropped memberships from the memberships list.
Parameters
array $member_data: The current saved memberships data.
Return value
array The dropped memberships.
1 call to lti_tool_provider_memberships_get_dropped_memberships()
- lti_tool_provider_memberships_batch_get_dropped_memberships in lti_tool_provider_memberships/
lti_tool_provider_memberships.batch.inc - Batch Operation Callback to get dropped memberships.
File
- lti_tool_provider_memberships/
lti_tool_provider_memberships.module, line 776 - lti_tool_provider_memberships hook implementations and support functions.
Code
function lti_tool_provider_memberships_get_dropped_memberships($member_data) {
$dropped_members = array();
if (!empty($member_data)) {
// Load all active members of current contextx.
$query = new EntityFieldQuery();
$result = $query
->entityCondition('entity_type', 'lti_tool_provider_memberships')
->propertyCondition('lti_tool_provider_memberships_context_id', $_SESSION['lti_tool_provider_context_info']['context_id'])
->propertyCondition('lti_tool_provider_memberships_status', 'Active')
->execute();
if (isset($result['lti_tool_provider_memberships'])) {
$entities = entity_load('lti_tool_provider_memberships', array_keys($result['lti_tool_provider_memberships']));
}
else {
$entities = array();
}
foreach ($entities as $entity) {
$found = FALSE;
foreach ($member_data as $key => $data) {
if ($entity->lti_tool_provider_memberships_user_id == $data['user_id']) {
$found = TRUE;
unset($member_data[$key]);
break;
}
}
if (!$found) {
if (!isset($entity->date_dropped)) {
$dropped_members[] = $entity;
}
}
}
}
if (!empty($dropped_members)) {
foreach ($dropped_members as $key => $row) {
$user_id[$key] = $row->lti_tool_provider_memberships_user_id;
}
array_multisort($user_id, SORT_ASC, $dropped_members);
}
return $dropped_members;
}