MDL-36060: Remove anonymous functions in mod/lti

This was breaking eaccelerator because it doesn't
support anonymous functions.
This commit is contained in:
Mark Nielsen
2013-04-30 17:50:29 +01:00
committed by Dan Poltawski
parent c6be1389b7
commit 75156589fd
2 changed files with 20 additions and 9 deletions
+17
View File
@@ -573,6 +573,23 @@ function lti_filter_get_types($course) {
return $DB->get_records('lti_types', $filter);
}
/**
* Given an array of tools, filter them based on their state
*
* @param array $tools An array of lti_types records
* @param int $state One of the LTI_TOOL_STATE_* constants
* @return array
*/
function lti_filter_tool_types(array $tools, $state) {
$return = array();
foreach ($tools as $key => $tool) {
if ($tool->state == $state) {
$return[$key] = $tool;
}
}
return $return;
}
function lti_get_types_for_add_instance() {
global $DB, $SITE, $COURSE;
+3 -9
View File
@@ -66,21 +66,15 @@ if ($ADMIN->fulltree) {
$types = lti_filter_get_types(get_site()->id);
$configuredtools = array_filter($types, function($value) {
return $value->state == LTI_TOOL_STATE_CONFIGURED;
});
$configuredtools = lti_filter_tool_types($types, LTI_TOOL_STATE_CONFIGURED);
$configuredtoolshtml = lti_get_tool_table($configuredtools, 'lti_configured');
$pendingtools = array_filter($types, function($value) {
return $value->state == LTI_TOOL_STATE_PENDING;
});
$pendingtools = lti_filter_tool_types($types, LTI_TOOL_STATE_PENDING);
$pendingtoolshtml = lti_get_tool_table($pendingtools, 'lti_pending');
$rejectedtools = array_filter($types, function($value) {
return $value->state == LTI_TOOL_STATE_REJECTED;
});
$rejectedtools = lti_filter_tool_types($types, LTI_TOOL_STATE_REJECTED);
$rejectedtoolshtml = lti_get_tool_table($rejectedtools, 'lti_rejected');