orca-nrw / crossplatform-moodle-lti-plugin Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
Version Moodle 3.9
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Actual result:
ORCA Logo is not displayed.
Expected result:
Orca Logo should be displayed
Issue orginally submitted by Jana Schmitz
Describe the bug
A Teacher can not switch back to search in all courses.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
Inside the navigation having a instance wide selector
Possible solutions / proposals
Additional menu item
Software versions (please complete the following information):
Should be applicable to all but Moodle 4.0 php 8.0 www.uni-muenster.de/LearnWeb/learnweb2 firefox
Version: Moodle Version: 3.9.16
Link: https://moodle-sandbox.ruhr-uni-bochum.de/
user:XXX pw:XXXX
Reproduction steps:
Login as user Provider / Client
Actual results:
No deletion deadline
No data Protection declaration
Expected results:
Add deletion deadline
No data Protection declaration
Issue originally submitted by Lena Nedwed:
Thanks for the plugin! However, when installed under 4.0 we are getting the error
Exception - Too few arguments to function core_course\local\entity\content_item::__construct(), 8 passed in [dirroot]/mod/orcalti/lib.php on line 286 and exactly 9 expected
-> in 4.0 every mod has a purpose which has to be passed to the constructor. Otherwise, the plugin can not be used.
Describe the bug
This is untested, but the styles.css file contains CSS rules which may conflict with other rules or stylings of core or other plugins. There are rules which begin with .path-mod-orcalti but there are also dozens or rules which do not. We are unsure whether those rules are intended to only apply to layout elements of mod_orcalti. If, then there should be a way to limit styling to that activity.
Possible solutions / proposals
Test it and prepend each rule which applies to mod_orcalti elements with .path-mod-orcalti or something appropriate.
Describe the bug
You haven't added git tags yet, but the official release is still on the horizon, on 02.01.2023...So this may be superfluous. But judging from the installation manuals, you expect people to clone and update your plugin on the server. (For one, some servers don't have git installed on the production server)
Please consider releasing concrete versions using git tags.
Expected behaviour
You add git tags when you release updated versions of your plugin, best would be to use some kind of semantic versioning, e.g. 1.1.0 or 3.11-1.2.0 or something like that. This way, the server admin can control when to update the plugin instead of being at the "mercy" of branch commits or having to document deployed versions with "gitid: asf71h84578125676056..."
Describe the bug
When upgrading from main_311 to main_4 the version number decreases.
To Reproduce
Steps to reproduce the behaviour:
Can not downgrade plugin
Expected behaviour
Plugin can be upgraded.
Possible solutions / proposals
Make code compatible for multiple versions or always have a higher version for main_4 branch.
Software versions (please complete the following information):
Contact information (optional)
[email protected]
Place - URL: https://moodle-dev.hsnr.de/course/modedit.php?update=480624&return=0&sr=0
Version: mod_orcalti, 2022091500, https://provider.preview.orca.nrw/ltidir/
Moodle Dev Version 3.11.10 (Build: 20220912) (2021051710)
User Name and Password: Personal HN-Account
User type: Teacher
Reproduction steps:
Login as user
Go to site home & Enable editing and select course
Selecting suitable ORCA Content
Actual result:
Name of ORCA Content is not displayed next to ‘Auswählen’ Button
Expected result:
Name of ORCA Content should be displayed right next to ‘Auswählen’ Button
Issue originally submitted by Irina Hoermann:
AK:
After clickin on “Aswählen” and selecting a course/content, course/content name should be copied/replaced in the in the input field “Name of Activity”
Input filed should be editable
When another course/content is selected, a new course/content name should be shown in the input filed
Input field cannot be empty
Version: Moodle Version: 3.9.16
Link: Moodle Sandbox
user:XXX pw:XXXX
Reproduction steps:
Login as user in Client
Add course
Enable editing mode
Add activity
Select ORCA-Inhalt
Actual result:
(Fach-)Kategorien in Content selection do not correspond to Categories displayed in Plugin
Category OSA does not exists
→ Category should be named “Mathematik, Naturwissenschaft” and “Fachübergreifend”
Expected result
This is actually not a bug, since categories in test cases may have had different names compared to those in Moodle Sandbox → Bug was not reproduced
Describe the bug
Changing the size of the window makes the pop-up ugly.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
Layout realign
Software versions (please complete the following information):
Contact information (optional)
Nina Herrmann WWU [email protected]
The instruction proposes to test the connection by adding an activity - However, as it is a user page, the error messages are not meaningful
However, the network tab does not give me a 404, so I have to search the code looking for the request (most likely not even been sent) and possible causes without having further information.
The provider URL that is included in the installation instructions does not match the way it needs to be for it to actually work with the codebase, as "/ltidir" is already hardcoded and thus gets appended to the provider URL twice.
Proposed fix: remove "/ltidir" from all api calls to the provider to be in accordance with the provided URL from the installation instructions.
Version: Moodle Version: 3.9.16
Link: provider.preview.orca.nrw/moodle
Happened on Client: moodle-sandbox of RUB
user:XXX pw:XXXX
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Select ORCA Content
Actual result:
Expected result:
Course should open, but only if course was created in Provider in the first place, so that it can be consumed by client.
Issue submitted during testing phase by Lena Nedwed
Version Moodle 3.9.17
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Click on contact E-mail and open developer tools
Actual result:
Supprt E-Mail adress is seperated by space from “mailto:” .This is not how it should be done normally. Generally, this will not cause that many issues in frequently used browsers.
AK:
Remove space after “mailto:”
Describe the bug
the capabilities do not have a string defintion
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
Have a string describing the capability
Possible solutions / proposals
Add strings to lang.php
Software versions (please complete the following information):
Contact information (optional)
Nina Herrmann - Uni Münster - [email protected]
Describe the bug
When a quiz or an other graded activity is completed within the Orca Provider, the results or grades are not transferred to Moodle. However, there seems to be database tables and functions for this functionality.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
Based on the functionality of server.php/ serverlib.php with orca_update_grade I would expect that the results would be transferred to Moodle, so that they are visible in the gradebook.
Screenshots
Orca Provider:
Moodle:
Software versions (please complete the following information):
Contact information (optional)
Laura Troost, WWU ([email protected])
Place - URL: https://moodle-dev.hsnr.de/course/modedit.php?update=480624&return=0&sr=0
Version: mod_orcalti, 2022091500, https://provider.preview.orca.nrw/ltidir/
Moodle Dev Version 3.11.10 (Build: 20220912) (2021051710)
User Name and Password: Personal HN-Account
User type: Student
Reproduction steps:
Login into Moodle Client
Go to Site home and enable editing
Creating new Test course. Click on new course and type in all mandatory information
add activity
Name Orca acitivity and implement into course
Go to Website Administration
Open sceond Tab ‘Nutzer/innen’
Create new user in ‘Nutzerkonten’
Filling mandatory fields such as ‘Vorname’ Nachname etc.
Select newly created user by going to course which was created in step 3
Go to ‘nutzerinnen’ tab
Enrol newly created user by clicking on grey button
Go to search field ans search for enrolled student
Open participats list and click on student who is supposed to do the test
Provider system is opening and student is finishing test
In Navbar on the left, student can check results
Actual result:
There is no Nav Bar within Provider System, enabling student to check all courses visited. It is only possilbe to see the individual test results.
Expected result:
Results are opening and student can see courses in provider system. Test results should be visible for activity type test
Issue was originally subitted by Irina Hoermann:
Version: Moodle Version: 3.9.16
Link: Moodle Sandbox
user:XXX pw:XXXX
Browser: Firefox
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Select ORCA Content
Actual result:
It is not possible, to expand course description. This implies, that Description is longer then visible text
Place - URL: https://moodle-dev.hsnr.de/course/modedit.php?update=480624&return=0&sr=0
Version: mod_orcalti, 2022091500, https://provider.preview.orca.nrw/ltidir/
Moodle Dev Version 3.11.10 (Build: 20220912) (2021051710)
User Name and Password: Personal HN-Account
User type: Teacher
Reproductions steps:
Login into Moodle
Open an existing course in Moodle client and add an activity
Content is selectable by clicking on Button ‘Auswählen’
Suitable content can be found in search function
Navigation through sites is possible by clicking on arrows
Actual result:
When menu is expanded, content selection window will overlap categories on the left
Expected result:
Content selection window must be entirely visible
Issue originally submitted by Irina Hörmann
Describe the bug
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
Possible solutions / proposals
s.o.
Software versions (please complete the following information):
Contact information (optional)
Nina Herrmann [email protected]
Die Funktionalität des kapitelweise Einbindens der ORCA Kurse in Moodle für Moodle 4.0. Hierzu wird für den Moodle client eine Testumgebung gebraucht
To Do
Erstellung einer Moodle Testumgebung analog zur aktuell bestehenden 4.0 Version im Moodle Client Link: https://moodleclient.devel.orca.nrw/
Akzeptanzkriterien
Die Auslieferung der Testumgebung soll mit den dazugehörigen Zugängen erfolgen (Passwort + User)
Result
ist da: https://moodleclient47.devel.orca.nrw/moodle/
Username/Passwörte: wie für https://moodleclient.devel.orca.nrw/moodle/
ersion: Moodle Version: 3.9.16
Link: Moodle Sandbox
user:XXX pw:XXXX
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Select ORCA Content
Actual result:
Button “Auswählen“ for ORCA-Content, when creating an ORCA LTI Activity is displayed as mandatory field. A User can create an ORCA LTI Activity without choosing ORCA Content → skipping “Asuwählen”. Thus, ORCA LTI Activity can be created without selecting a content in Plugin.
An empty activity will be created
AK (SHOULD):
It should not be possible to create an empty activity (with using this LTI plugin dialog) “Einen ORCA-Inhalt auswählen”
If a user clicks on “Save” without selecting “ORCA-Inhalt”/ORCA-content, an Error Message should be shown, or Save button should be disabled (up to a developer) and activity should not be created
Version: Moodle Version: 3.9.16
Link: https://moodle-sandbox.ruhr-uni-bochum.de/
user:XXX pw:XXXX
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Select ORCA Content
Save activity to course
Start activity
User is redirected to provider course
Actual result:
Anonymization as user2, user 3 is contra intuitive
Anonymization not given, since user id from moofle client was over taken as user name
Results in ORCA Course from students can be matched to student → Anonymization not given
Issue originally submitted by Lena Nedwed:
Please check the plugin with the moodle codechecker (https://github.com/moodlehq/moodle-local_codechecker).
Although some parts are discussable, it is best practice to respect guidelines. I would have expected that common moodle development techniques would be known.
Describe the bug
When the Orca activity is embedded, two headers are displayed when viewing the activity.
To Reproduce
Steps to reproduce the behaviour:
Expected behaviour
There should be only one heading.
Software versions (please complete the following information):
Contact information (optional)
Laura Troost. WWU
Version Moodle 3.9.17
user type: admin
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Going through pages in pagination
Actual result:
Screenshot 1
Screenshot 2
Content which is scrolled down
Klickin on next page e.g. 11
Still scrolled down to bottom
AK:
When being in the ORCA Plugin Dialog window, when a user clicks on next page (see screenshot 1), next page should start at the top of the page instead of being scolled down to the buttom.
Issue originally submitted by danny welz:
ersion: Moodle Version: 3.9.16
Link: Moodle Sandbox
user:XXX pw:XXXX
Reproduction steps:
Login as user in provider system
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Select ORCA Content
Actual result:
In Providersystem, it should not be possible to aceessing subordinated pages.
Accessing this part is e.g. possible. https://provider.preview.orca.nrw/moodle/user/files.php
User can now start doing file uploads. This could be critical, if user wants is registered by self-service. If this is the case user can upload infinite amount of files via Orca.
In Provider-Test: Course categories user can take a look on all courses.
Version Moodle 3.9.17
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Search for content via search function
Actual result:
Many entries could affect performance on old Pc’s
Expected result:
The results are currently found extremely quickly. Apparently, this is made possible via an array with entries that is available locally in the client. With growing content, for example 400 pages of results, this can lead to problems. Poor-performing devices then cannot cope with a keystroke-initiated search and regularly hang up or take a long time.
In order to avoid the problem, such a search can only be triggered if there are at least 3 characters. This reduces too many requests for weak devices.
when calling mod_form I get the warning
´Too much data passed as arguments to js_call_amd("mod_orcalti/orca_lti_selector-lazy", "init"). Generally there are better ways to pass lots of data from PHP to JavaScript, for example via Ajax, data attributes, ... . This warning is triggered if the argument string becomes longer than 1024 characters.`
Although this is is "merely" a warning you might want to change it, as it is obviously bad coding style.
Die Funktionalität des kapitelweise Einbindens der ORCA Kurse in Moodle für Moodle 4.0. Hierzu wird für den Moodle client eine Testumgebung gebraucht
To Do
Erstellung einer Moodle Testumgebung analog zur aktuell bestehenden 4.0 Version im Moodle Client Link: (moodleclient.devel.orca.nrw)
Akzeptanzkriterien
Die Auslieferung der Testumgebung soll mit den dazugehörigen Zugängen erfolgen (Passwort + User)
Result
soll da sein: https://moodleclient48.devel.orca.nrw/moodle/
Username/Passwörte: wie für https://moodleclient.devel.orca.nrw/moodle/
Version Moodle 3.9
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Actual result:
There is no x at top right. Closing Plugin is happening by clicking outside of plugin.
Expected result:
Not really a bug
Issue originally submitted by Jana Schmitz:
Version Moodle 3.9
Reproduction steps:
Login as user
Create Course
Enable editing
Add activity
Select ORCA LTI to open Plugin
Search for course in Plugin search function
Press “Enter” after typing course name in the search input field
Actual result:
After pressing enter in Plugins' search function, an error will occur →
Expected result:
No error should orccur
Issue originally submitted by Jana Schmitz:
Step 3:
AK:
Disable the button “Enter”, when the cursor is in the Search input box
Actual result - Moodle 4.0 plus PHP 8
Login as user
Go to site home
Create new course
Enable editing
Select ORCA Content
Plugin is opening and select activity
Actual result:
ORCA LTI does not work for Moodle client with PHP 8.0
Expected reult:
Plugin should work
Version: Moodle Version: 3.9.16
Link: https://moodle-sandbox.ruhr-uni-bochum.de/
user:XXX pw:XXXX
Reproduction steps:
Login in Moodle Client
Login in Provider
Actual result:
When logging out of Provider page, user is still logged into Client page.
When logging out of Moodle Client, user is still logged in ORCA.
Expected result:
Does not seem to be a bug
Issue submitted during testing phase by Lena Nedwed
AK:
Idea: if a user closes the window, user should be clogged out from Provider. (not possible)
Idea: Banner with the information (not possible)
Idea: Auto Logout after for example 5 minutes of inactivity (can be implemented)
lace - URL: https://moodle-dev.hsnr.de/course/modedit.php?update=480624&return=0&sr=0
Version: mod_orcalti, 2022091500, https://provider.preview.orca.nrw/ltidir/
Moodle Dev Version 3.11.10 (Build: 20220912) (2021051710)
User Name and Password: Personal HN-Account
User type: Teacher
Reproduction steps:
Login into university specific moodle system
Go to site home
Enable editing
Select Category (Fachkategorie) Mathematik, Naturwissenschaften
There should be a category named Mathematik, Naturwissenschaften as first breadcrumb
Select course in Breadcrumb → Wint Check Mathematik
Actual result:
Nothing clickable except ‘Auswählen’ and add activiy to course.
Expected result:
Mathmatik Kurs was selected. WINT Checks are opening on the left. Content regard Wint check is visible on the right.
Content regarding WINT Checkt is marked in grey
Breadcrumb Navigation is changed at the top (below Search field)
Issue originally submitted by Irina Hoermann
Describe the bug
OIDC profile scope name
claim value is getting HTML encoded.
To Reproduce
Steps to reproduce the behaviour:
D'andre Thompson
name
claim is HTML encoded (D'andre Thompson
), while given_name
and family_name
claims are not.Expected behaviour
name
claim value is not HTML-encoded (D'andre Thompson
)
Possible solutions / proposals
Modify https://github.com/orca-nrw/crossplatform-moodle-lti-plugin/blob/main_311/locallib.php#L924, so that it no-longer HTML-encodes the value, i.e. to $requestparams['lis_person_name_full'] = fullname($USER, true);
fullname()
by default will produce a displayable value. It's not needed here. The claims must be simple character strings with no additional encoding. Providing true
as the second argument will no longer produce a displayable name, but will provision the full name as-is.
Screenshots
If applicable, add screenshots to help explain your problem.
Software versions (please complete the following information):
TBD
Additional context
TBD
Describe the bug
The submodule clientapp
is currently integrated via SSH, which raises issues when adding the plugin crossplatform-moodle-lti-plugin
as a submodule behind a firewall. Specifically, trying to recursively update all submodules in a given Moodle codebase, the clientapp
one fails if outgoing SSH connections are blocked (which they should be!).
In combination with the error message, the accompanying timeout is a considerable nuisance when managing the Moodle codebase.
To Reproduce
Steps to reproduce the behaviour:
git clone https://github.com/orca-nrw/crossplatform-moodle-lti-plugin.git moodle-mod_orcalti
git submodule add https://github.com/orca-nrw/crossplatform-moodle-lti-plugin.git mod/orcalti
git submodule sync
git submodule update --recursive --force --init
Submodule 'clientapp' ([email protected]:orca-nrw/crossplatform-lti-plugin.git) registered for path 'clientapp'
Cloning into 'moodle-mod_orcalti/clientapp'...
ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
fatal: clone of '[email protected]:orca-nrw/crossplatform-lti-plugin.git' into submodule path 'moodle-mod_orcalti/clientapp' failed
Failed to clone 'clientapp'. Retry scheduled
Expected behaviour
Initialization / Update of submodules should work with minimal adjustments to security rules (firewall).
Possible solutions / proposals
As far as we can tell, the submodule is used in development, not in production - as such it should ideally be removed entirely from future releases. (Or at the very least be integrated via HTTPS.)
Software versions (please complete the following information):
When I try to add an activity calling $curl->get(
in mod_form.php gives the following error
Fehler: http_build_query(): Argument #1 ($data) must be of type array, resource given
[Weitere Informationen über diesen Fehler](http://docs.moodle.org/400/de/error/moodle/generalexceptionmessage)
Debug-Info:
Error code: generalexceptionmessage
Stack trace:
line 3984 of /lib/filelib.php: TypeError thrown
line 3984 of /lib/filelib.php: call to http_build_query()
line 196 of /mod/orcalti/mod_form.php: call to curl->get()
line 218 of /mod/orcalti/mod_form.php: call to mod_orcalti_mod_form->get_content_by_url()
line 446 of /mod/orcalti/mod_form.php: call to mod_orcalti_mod_form->get_orcalti_tools()
line 214 of /lib/formslib.php: call to mod_orcalti_mod_form->definition()
line 131 of /course/moodleform_mod.php: call to moodleform->__construct()
line 152 of /course/modedit.php: call to moodleform_mod->__construct()
Actually, $result_json = $curl->get(rtrim(rtrim($request_url, " "), "/") . $subpath, $request_context);
passes a context object not an array.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.