mirror of
https://github.com/moodle/moodle.git
synced 2025-08-03 16:13:28 +02:00
MDL-65327 performance: Lazy-load module name strings
This commit is contained in:
parent
6735197cc2
commit
d91aa1e760
4 changed files with 10 additions and 11 deletions
|
@ -261,8 +261,8 @@ class core_course_external extends external_api {
|
||||||
$module['id'] = $cm->id;
|
$module['id'] = $cm->id;
|
||||||
$module['name'] = external_format_string($cm->name, $modcontext->id);
|
$module['name'] = external_format_string($cm->name, $modcontext->id);
|
||||||
$module['instance'] = $cm->instance;
|
$module['instance'] = $cm->instance;
|
||||||
$module['modname'] = $cm->modname;
|
$module['modname'] = (string) $cm->modname;
|
||||||
$module['modplural'] = $cm->modplural;
|
$module['modplural'] = (string) $cm->modplural;
|
||||||
$module['modicon'] = $cm->get_icon_url()->out(false);
|
$module['modicon'] = $cm->get_icon_url()->out(false);
|
||||||
$module['indent'] = $cm->indent;
|
$module['indent'] = $cm->indent;
|
||||||
$module['onclick'] = $cm->onclick;
|
$module['onclick'] = $cm->onclick;
|
||||||
|
|
|
@ -559,12 +559,10 @@ function get_module_types_names($plural = false) {
|
||||||
if ($allmods = $DB->get_records("modules")) {
|
if ($allmods = $DB->get_records("modules")) {
|
||||||
foreach ($allmods as $mod) {
|
foreach ($allmods as $mod) {
|
||||||
if (file_exists("$CFG->dirroot/mod/$mod->name/lib.php") && $mod->visible) {
|
if (file_exists("$CFG->dirroot/mod/$mod->name/lib.php") && $mod->visible) {
|
||||||
$modnames[0][$mod->name] = get_string("modulename", "$mod->name");
|
$modnames[0][$mod->name] = get_string("modulename", "$mod->name", null, true);
|
||||||
$modnames[1][$mod->name] = get_string("modulenameplural", "$mod->name");
|
$modnames[1][$mod->name] = get_string("modulenameplural", "$mod->name", null, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
core_collator::asort($modnames[0]);
|
|
||||||
core_collator::asort($modnames[1]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $modnames[(int)$plural];
|
return $modnames[(int)$plural];
|
||||||
|
|
|
@ -260,7 +260,6 @@ class course_modinfo {
|
||||||
$modnamesused[$mod->modname] = $modnames[$mod->modname];
|
$modnamesused[$mod->modname] = $modnames[$mod->modname];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
core_collator::asort($modnamesused);
|
|
||||||
return $modnamesused;
|
return $modnamesused;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -378,10 +378,12 @@ class core_modinfolib_testcase extends advanced_testcase {
|
||||||
$this->assertEquals('', $modinfo->get_section_info(2)->sequence);
|
$this->assertEquals('', $modinfo->get_section_info(2)->sequence);
|
||||||
$this->assertEquals($page3->cmid, $modinfo->get_section_info(3)->sequence);
|
$this->assertEquals($page3->cmid, $modinfo->get_section_info(3)->sequence);
|
||||||
$this->assertEquals($course->id, $modinfo->get_course()->id);
|
$this->assertEquals($course->id, $modinfo->get_course()->id);
|
||||||
$this->assertEquals(array('assign', 'forum', 'page'),
|
$names = array_keys($modinfo->get_used_module_names());
|
||||||
array_keys($modinfo->get_used_module_names()));
|
sort($names);
|
||||||
$this->assertEquals(array('assign', 'forum', 'page'),
|
$this->assertEquals(array('assign', 'forum', 'page'), $names);
|
||||||
array_keys($modinfo->get_used_module_names(true)));
|
$names = array_keys($modinfo->get_used_module_names(true));
|
||||||
|
sort($names);
|
||||||
|
$this->assertEquals(array('assign', 'forum', 'page'), $names);
|
||||||
// Admin can see hidden modules/sections.
|
// Admin can see hidden modules/sections.
|
||||||
$this->assertTrue($modinfo->cms[$assign0->cmid]->uservisible);
|
$this->assertTrue($modinfo->cms[$assign0->cmid]->uservisible);
|
||||||
$this->assertTrue($modinfo->get_section_info(3)->uservisible);
|
$this->assertTrue($modinfo->get_section_info(3)->uservisible);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue