function lti_tool_provider_outcomes_lti_tool_provider_launch_alter in LTI Tool Provider 7
Implements hook_lti_tool_provider_launch_alter().
File
- lti_tool_provider_outcomes/
lti_tool_provider_outcomes.module, line 478
Code
function lti_tool_provider_outcomes_lti_tool_provider_launch_alter(&$launch_info, $account) {
if (isset($launch_info['context_id']) && isset($launch_info['resource_link_id']) && isset($launch_info['resource_link_title'])) {
// Set the resultvalue_sourcedids in the launch info.
$launch_info['resultvalue_sourcedids'] = isset($launch_info['ext_ims_lis_resultvalue_sourcedids']) ? $launch_info['ext_ims_lis_resultvalue_sourcedids'] : 'decimal';
// Create or update the resource.
$launch_info['resource_id'] = lti_tool_provider_outcomes_get_set_resource($launch_info['consumer_id'], $launch_info['context_id'], $launch_info['resource_link_id'], $launch_info['resource_link_title'], $launch_info['resultvalue_sourcedids']);
if (isset($launch_info['ext_ims_lis_basic_outcome_url']) || isset($launch_info['lis_outcome_service_url'])) {
// Update the consumer with the outcomes service url.
if (isset($launch_info['ext_ims_lis_basic_outcome_url'])) {
lti_tool_provider_outcomes_update_outcome_service_url($launch_info['consumer_id'], $launch_info['ext_ims_lis_basic_outcome_url'], TRUE);
}
else {
lti_tool_provider_outcomes_update_outcome_service_url($launch_info['consumer_id'], $launch_info['lis_outcome_service_url'], FALSE);
}
if (isset($launch_info['lis_result_sourcedid'])) {
// Create or update the outcome.
lti_tool_provider_outcomes_create_outcome($launch_info['lis_result_sourcedid'], $launch_info['context_id'], $launch_info['resource_id'], $account->uid);
}
}
}
}