Skip to content

Merging Common Cartridge Export (LTI 1.1) into develop/nutmeg.master. #239

Open
mystica-l wants to merge 14 commits into
develop/nutmeg.masterfrom
feature.nutmeg/mystica-l/common-cartridge-export
Open

Merging Common Cartridge Export (LTI 1.1) into develop/nutmeg.master. #239
mystica-l wants to merge 14 commits into
develop/nutmeg.masterfrom
feature.nutmeg/mystica-l/common-cartridge-export

Conversation

@mystica-l
Copy link
Copy Markdown

@mystica-l mystica-l commented Nov 22, 2024

Common cartridge export feature accessed by usage of export_imscc management command.
Able to export multiple courses at once by having their course codes follow one after another.
Able to export as external tools only for LMS platforms that don't use assignments using --external-tool-only flag.

Added --cc-lti flag that redirects from xml_exporter to imscc_exporter in export_olx.py, new file created to start implementing imscc function, starting with basic iterator for sequentials
…ent_settings.xml file

next steps, work on creating identifiers and linking them, look at trying to extract points, clean up code, remove unecessary functions for original openedx exporter in imscc_exporter.py
…e new TestExportManager class

All the necessary work for imscc was merged together into one class to keep things organized and concise, additionally, moved code to create assignment_setting.xml files into a function separate from the primary export command
@ztraboo ztraboo force-pushed the feature.nutmeg/mystica-l/common-cartridge-export branch from f471379 to caad21d Compare December 6, 2024 18:25
…ourse_settings folder

Removed a lot of the hard coded assignment parameters for the xml, found most were not necessary
Need to update imsmanifest_xml to take the new identifiers as assignment folders are built out first
…xternal tool xml file export

Next steps include finishing out module_meta.xml file, probably one of the more challenging files to create
…ncorrect schema values

Next, need to incorporate module headers
Also fixed a lot of typos and added more detailed documentation
…roups is iterable

Added safeguard that prevents passing multiple courses without cc-lti flag
assignment folders imsmanifest and module_meta now generates using multiple courses, changed identifier dictionary keys of sequentials and chapters to use a serialized object with custom hash function
Update for use of a new serialized object for chapters and sequentials due a weird issue where iterating through the same list of courselike keys in a different function led to slightly different chapters and sequentials causing for non-consistent keys, maybe due to memory of the objects?
Naming conventions were also added such as adding the tag at the end of the course key to the beginning of modules, etc.
Need to check if this system also works with qualtrics surveys
Update: Works with qualtrics surveys
@ztraboo ztraboo force-pushed the feature.nutmeg/mystica-l/common-cartridge-export branch from caad21d to b510d8b Compare December 6, 2024 19:07
@ztraboo ztraboo force-pushed the feature.nutmeg/mystica-l/common-cartridge-export branch from b510d8b to 2f95a01 Compare December 6, 2024 19:36
# re pattern for extracting the values between the plus signs
between_pluses = r'(?<=\+)(.*?)(?=\+)'
# re pattern for the 'FAA-ACS-AM-IA-ACE' that all courses seem to have
course_type = r'([A-Za-z]{3}-[A-Za-z]{3}-[A-Za-z]{2}-[A-Za-z]{2}-[A-Za-z]{3})'
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mystica-l
This only works for things like FAA-ACS-AM-IB-ACD for example. It will not work for EV-ST-IEV or other things like SFT108. I'm going to remove this check and we'll just use the full Course Number for now. At the moment, there is no consistency in how we name these values.

@ztraboo ztraboo changed the title Merging Common Cartridge Export into develop/nutmeg.master. Merging Common Cartridge Export (LTI 1.1) into develop/nutmeg.master. Mar 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants