Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-28705

IMS Enterprise enrolment: Add configurable mapping between IMS course names and Moodle course names

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 2.1.1
    • 2.5
    • Enrolments
    • MOODLE_21_STABLE
    • MOODLE_25_STABLE
    • MDL-28705_master
    • Hide

      To test this issue you'll need a ims XML file with user/s, course/s and enrolment/s, there is one attachment, otherwise I think Ankit have a repository of files for this kind of uses. The interesting part is the course creation, the field used as main identifier of a course is enterprise->group->sourcedid->id

      If you use the attached ims.xml, it don't have a enterprise->group->description->full tag, you'll have to add it (just copy & paste another description child and replace the tag content) to also test this tag.

      1. Enable IMS enrolment type
        1. Go to Plugins -> Enrolments -> Manage enrol plugins
        2. Click 'Settings' on the IMS Enterprise row
        3. Add the path of the ims file and check the values 'createnewusers', 'createnewcourses' and 'createnewcategories', new you can leave the default values to the imscoursemap* settings
        4. Save changes
      2. Follow the link in the lower part of the IMS enrolment settings page 'perform an IMS Enterprise import right now' and ensure it finished without errors
      3. The course SHOULD be created with the shortname, fullname and summary values according to the specified mapping
      4. Change the imscoursemap* mapping, edit the XML file and change the enterprise->group->sourcedid->id value (to create another course) and execute again 'perform an IMS Enterprise import right now'
      5. The course SHOULD be created with the shortname, fullname and summary values according to the specified mapping
      6. Change again the imscoursemap* mapping to test all the description tag children tags (short, long and full), and check if the course creation respects that mapping
      Show
      To test this issue you'll need a ims XML file with user/s, course/s and enrolment/s, there is one attachment, otherwise I think Ankit have a repository of files for this kind of uses. The interesting part is the course creation, the field used as main identifier of a course is enterprise->group->sourcedid->id If you use the attached ims.xml, it don't have a enterprise->group->description->full tag, you'll have to add it (just copy & paste another description child and replace the tag content) to also test this tag. Enable IMS enrolment type Go to Plugins -> Enrolments -> Manage enrol plugins Click 'Settings' on the IMS Enterprise row Add the path of the ims file and check the values 'createnewusers', 'createnewcourses' and 'createnewcategories', new you can leave the default values to the imscoursemap* settings Save changes Follow the link in the lower part of the IMS enrolment settings page 'perform an IMS Enterprise import right now' and ensure it finished without errors The course SHOULD be created with the shortname, fullname and summary values according to the specified mapping Change the imscoursemap* mapping, edit the XML file and change the enterprise->group->sourcedid->id value (to create another course) and execute again 'perform an IMS Enterprise import right now' The course SHOULD be created with the shortname, fullname and summary values according to the specified mapping Change again the imscoursemap* mapping to test all the description tag children tags (short, long and full), and check if the course creation respects that mapping

    Description

      When using IMS Enrollment the mapping between IMS and Moodle course properties, like names, is hard coded. In our local Moodle I have altered these hard coded mappings for years to work with our IMS files. With Moodle 2.0 all of our other custom code is unnecessary except this, so I figured it was time to attempt to submit this as a feature request. Because my hard coded mapping may not be suitable to others (as the default is unsuitable to me), I have attempted to make the mapping configurable. I'm not very familiar with Moodle development. I hope that someone would look at my changes to see if I'm moving in the right direction and give me suggestions for improvement so that the code could one day be accepted into the stable tree.

      https://github.com/martinluther/moodle/compare/MOODLE_21_STABLE...namemapping

      Attachments

        Issue Links

          Activity

            People

              dmonllao David Monllaó
              acspike Aaron C Spike
              Andrew Davis Andrew Davis
              Dan Poltawski Dan Poltawski
              Mark Nelson Mark Nelson
              David Woloszyn, Huong Nguyen, Jake Dallimore, Meirza, Michael Hawkins, Raquel Ortega, Safat Shahin, Stevani Andolo
              Votes:
              1 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                14/May/13