-
New Feature
-
Resolution: Fixed
-
Minor
-
3.0
-
MOODLE_30_STABLE
-
MOODLE_31_STABLE
-
MDL-52035_master -
https://moodle.org/plugins/view/local_ltiprovider
Martin is interested in having support for sharing courses via LTI.
He has requested me to take a look to integrate the LTI Provider plugin into Moodle 3.1
Initially we will support only LTI 1.1 (with the outcomes and membership service)
The LTI Provider plugin is a local add-on with some hacks (sharing of activities, force navigation, custom CSS) that maybe are not suitable for Moodle core, I'll do a full review of the plugin features to create a spec.
This should be shipped with core Moodle - we should review the plugin in the plugins DB, identify anything that needs fixing - and fix it (in this issue). Will need to move it out from local
From Juan,
The plugin uses some hacks that in my opinion are not suitable for core so I think that maybe an initial approach would be to create a new enrolment plugin "LTI" for sharing courses. Activity sharing would require much more job.
Todo
- Create authentication plugin (In progress)
- Create enrol plugin
- Create LTI role, setup permissions so they can only do stuff in course
Fix debugging errorstextlib > core_text (done by aspark)local_ltiprovider_extends to local_ltiprovider_extend (done by aspark)$plugin >component (done by aspark)get_list_of_timezones (done by mjsamberg)Notice: Undefined index: custom_resource_link_description in /home/moodle/moodles/stable_master/moodle/local/ltiprovider/tool.php on line 325
- Move out from local/
- Add events (if necessary)
- Option to enable "allowframembedding" when you activate the provider
- Don't modify _GET and _POST. Instead, store them in a new variable (best practice) Perhaps there is a way to use moodle library functions as well, but I doubt it. CIBot will just have to complain about this one
Fix bug where if you click the link to LTI provider in course settings from an activity module, it will go to the wrong course id- Add consumer key, rather than just using the same thing as the shared secret - security concern
- Check github issues and pull requests. Pull in anything that is ready. Create issues & branches for any needing more work
- Make sure page titles are set and the headers are included, pagetypes are correct, urls set navigation tree is correct, breadcrumbs show etc
Fix coding style problems- Remove elements from navigation that the user doesn't need (nav block, user menu)
- Look into using capabilities rather than rolesallowedcreatecontexts and rolesallowedcreateresources
- Fix bug where if you log in as admin on your site, you can edit settings to the module on provider's moodle (might be the username is 'admin' and so it appears in $CFG->admin)
- If the user has an invalid email address, it will constantly try to redirect them to the course, then back to their profile edit page, then back again. We may need a fix for this or similar situations. (There's already a fix for site policy, perhaps we can do similar fixes for other problems)
- Throw exception if you try to access the site outside of LTI.
- The plugin asks you to turn on the setting 'Allow frame embedding' which we state in core is 'not recommended for security reasons'. I can see this worrying users - need to think about a better approach without scaring people.
Remove upgrade path.- Look at all the TODOs in code.
Remove usage of deprecated functions.- Make sure all strings are being used, remove any that are not.
- Remove test folder.
- Fix incompatibility with MNet (see comments below)
- caused a regression
-
MDL-53979 Memory usage increment of a 1% in activities/course pages after MDL-52035
-
- Closed
-
- has a QA test
-
MDLQA-15286 CLONE - Teacher can share course, activity and resource using LTI provider
-
- Passed
-
-
MDLQA-15287 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-15875 CLONE - Teacher can share course, activity and resource using LTI provider
-
- Passed
-
-
MDLQA-15876 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-16521 CLONE - Teacher can share course, activity and resource using LTI provider (legacy)
-
- Passed
-
-
MDLQA-16522 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-17137 CLONE - Teacher can share course, activity and resource using LTI provider (legacy)
-
- Passed
-
-
MDLQA-17138 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-17725 CLONE - Teacher can share course, activity and resource using LTI provider (legacy)
-
- Passed
-
-
MDLQA-17726 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-18229 CLONE - Teacher can share course, activity and resource using LTI provider (legacy)
-
- Passed
-
-
MDLQA-18230 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-18723 CLONE - Teacher can share course, activity and resource using LTI provider (legacy)
-
- Passed
-
-
MDLQA-18724 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-19186 CLONE - Teacher can share course, activity and resource using LTI provider (legacy)
-
- Passed
-
-
MDLQA-19187 CLONE - A teacher can create, edit or delete an IMS-LTI provider
-
- Passed
-
-
MDLQA-9795 Teacher can share course, activity and resource using LTI provider (legacy)
-
- On Hold
-
-
MDLQA-9798 A teacher can create, edit or delete an IMS-LTI provider
-
- On Hold
-
- has been marked as being related by
-
MDL-54009 Prettify consuming an LTI provider from a Moodle site
-
- Closed
-
-
MDL-54177 LTI provider lang string improvements
-
- Closed
-
- is duplicated by
-
MDL-52151 Add LTI Provider to core
-
- Closed
-
- Testing discovered
-
MDL-53977 Accessing assignment via LTI provider only shows heading
-
- Closed
-