mirror of
https://github.com/moodle/moodle.git
synced 2025-08-07 01:46:45 +02:00
MDL-44902: Several additions to External Tool (LTI)
* LTI service related changes: ** Fixing exceptions in OAuth library. ** Added new launch option, Existing window: replaces entire page with the LTI object. ** The LTI tool ID used to perform the launch is now sent with the LTI launch parameters. This is sent back to Moodle on subsequent requests. ** Added $CFG->mod_lti_forcessl to force SSL on all LTI launches. ** Added new LTI launch parameter: tool_consumer_instance_name. Default value is site full name, but can be customized with $CFG->mod_lti_institution_name. ** The LTI grade service endpoints now set the affected user to the session. This was required for event listeners. ** Fix the grade deletion service. Was deleting the grade item instead of just the grade. ** Send error response when LTI instance does not accept grades and grades are being sent. ** Added a method for writing incoming LTI requests to disk for debugging. Disabled by default. * Changes for ltisource plugins: ** Can now to plug into backup/restore. ** Can now have settings.php files. ** Can now hook into the LTI launch and edit parameters. * Several grade changes: ** Added standard_grading_coursemodule_elements to LTI instance edit form. This means LTI instances can be configured with a grade. ** No longer assumes that grade is out of 100. ** Replaced modl/lti:grade capability with mod/lti:view. * JS on mod/lti/view.php for resizing the content object has been converted to YUI3. * Fixed misspellings in language file. * Added hooks for log post and view actions. * Bug fix for lti_get_url_thumbprint() when the URL is missing a schema.
This commit is contained in:
parent
f500ff4e52
commit
8fa50fdd34
23 changed files with 759 additions and 74 deletions
|
@ -173,4 +173,39 @@ if ($ADMIN->fulltree) {
|
|||
</script>
|
||||
";
|
||||
$settings->add(new admin_setting_heading('lti_types', get_string('external_tool_types', 'lti') . $OUTPUT->help_icon('main_admin', 'lti'), $template));
|
||||
|
||||
if (!during_initial_install()) {
|
||||
// Process subplugin settings pages if any.
|
||||
// Every subplugin that wishes to have settings page should provide it's own
|
||||
// settings.php assuming it will be added as a custom settings page.
|
||||
// A type will be passed through subtype parameter.
|
||||
// All such links will be placed in separate category called LTI.
|
||||
$plugins = get_plugin_list('ltisource');
|
||||
if (!empty($plugins)) {
|
||||
$toadd = array();
|
||||
foreach ($plugins as $name => $path) {
|
||||
if (file_exists($path.DIRECTORY_SEPARATOR.'settings.php')) {
|
||||
$toadd[] = $name;
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($toadd)) {
|
||||
$ADMIN->add('modules',
|
||||
new admin_category('ltisource',
|
||||
new lang_string('lti', 'lti'),
|
||||
$module->is_enabled() === false)
|
||||
);
|
||||
|
||||
foreach ($toadd as $name) {
|
||||
$component = 'ltisource_'.$name;
|
||||
$ADMIN->add($component,
|
||||
new admin_externalpage($name,
|
||||
new lang_string('pluginname', $component),
|
||||
new moodle_url("/mod/lti/source/{$name}/settings.php",
|
||||
array('subtype' => $component)))
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue