You are here

function lti_tool_provider_memberships_batch_process_altered_memberships in LTI Tool Provider 7

Batch Operation Callback to process altered memberships.

Parameters

array $context:

1 string reference to 'lti_tool_provider_memberships_batch_process_altered_memberships'
lti_tool_provider_memberships_form_submit in lti_tool_provider_memberships/lti_tool_provider_memberships.module
Membership admin form submit handler.

File

lti_tool_provider_memberships/lti_tool_provider_memberships.batch.inc, line 151
batch related functions for LTI Tool Provider Memberships module.

Code

function lti_tool_provider_memberships_batch_process_altered_memberships(&$context) {
  $current = isset($context['sandbox']['altered_members_chunk_current']) ? $context['sandbox']['altered_members_chunk_current'] : 0;

  // Alter members chunk by chunk.
  if ($context['results']['altered_members_chunk_max'] == 0 || $current >= $context['results']['altered_members_chunk_max']) {
    $context['finished'] = 1;
    $context['message'] = t('Process altered memberships.');
  }
  else {
    foreach ($context['results']['altered_members_chunked'][$current] as $member) {
      lti_tool_provider_memberships_alter_member($member);
    }
    $context['sandbox']['altered_members_chunk_current'] = ++$current;
    $context['finished'] = $context['sandbox']['altered_members_chunk_current'] / $context['results']['altered_members_chunk_max'];
    $context['message'] = t('Process altered memberships: @start of @max.', array(
      '@start' => $context['sandbox']['altered_members_chunk_current'],
      '@max' => $context['results']['altered_members_chunk_max'],
    ));
  }
}