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

Upgrade lib/lti1p3 to 5.2.1

    XMLWordPrintable

Details

    • MOODLE_401_STABLE
    • MOODLE_401_STABLE
    • MDL-76002-master
    • Hide

      Setup

      1. Create 2 local Moodle sites called 'platform' and 'tool'
      2. Clear the blocked hosts for both sites, via site admin > http security > blocked hosts (just remove all hosts and save)
      3. On the tool site, navigate to Site admin -> HTTP Security
      4. Enable Frame embedding

      Testing

      1. Using the dynamic registration process defined in the docs (https://docs.moodle.org/400/en/Publish_as_LTI_tool#Register_Moodle_with_the_platform), enable the relevant plugins on the tool site and create a registration for the platform site
      2. On the tool site ensure that the LTI Authentication plugin is also enabled
      3. Continue on the platform site (admin > manage tools) to complete the registration (again, see docs)
        1. Now, still on the platform site, edit the preconfigured tool setting:
          • ¬†Tool configuration usage: "Show in activity chooser and as a preconfigured tool"
        2. Save the tool
        3. Click activate on the tool
      4. Now, go to the tool site.
        1. Create a course with one assignment
        2. Click "More -> Published as LTI tools"
        3. Make sure you're on the LTI Advantage tab and click "Add"
        4. Select the assignment under "Tool to be published"
        5. Click "Add method"
      5. Now, go back to the platform and sign in as admin
        1. Now, create a course with 5 students (s1..s5)
        2. Click to add an activity, selecting "Moodle" from the activity chooser
        3. Click "Select content"
        4. If you're not logged in to the tool site (and don't have an account binding), you'll be prompted. Just follow the prompts and relaunch the "Select content" as required
        5. Click the "Add to course" checkbox for the assignment you published before (add to gradebook will be automatically ticked)
        6. Click "Add content"
        7. When you're back on the activity edit page, save and return to the course
        8. Click the newly created activity
          1. Verify you can see the remote resource (the assignment) loaded in a frame (If not, did you enable frame embedding on the tool site?)
        9. Now, log out
      6. Log in to the platform as user s1 (one of the students)
        1. Go to the course and launch the tool
        2. Add a file submission and submit
        3. Log out
      7. Now, log in to the platform as the admin again
        1. Launch the tool from the course and click "Grade" for the assignment
        2. Add a grade for the user s1 and save
        3. Now, via the command line, in the root of the tool site, run:

          php admin/cli/scheduled_task.php --execute="\enrol_lti\local\ltiadvantage\task\sync_grades" 

        4. Verify the task completes without errors
        5. Now, in the platform (where you're logged in as an admin) go to the course (the platform course - make sure you're not navigating using the navigation inside the tool frame!)
        6. Go to grades
        7. Verify you see the grade you gave the student s1
        8. Now, log out of the platform
      8. Log in to the tool site as the admin user
        1. Go to the course in which you published the assignment
        2. Go to participants
        3. Verify you see only the admin and s1 users there
        4. Now, via the command line, in the root of the tool site, run:

          php admin/cli/scheduled_task.php --execute="\enrol_lti\local\ltiadvantage\task\sync_members" 

        5. Verify the task completes without errors
      9. In the tool, refresh the participants page
        1. Verify you see the other members of the platform course now present in the list (s2 through s5)
      Show
      Setup Create 2 local Moodle sites called 'platform' and 'tool' Clear the blocked hosts for both sites, via site admin > http security > blocked hosts (just remove all hosts and save) On the tool site, navigate to Site admin -> HTTP Security Enable Frame embedding Testing Using the dynamic registration process defined in the docs ( https://docs.moodle.org/400/en/Publish_as_LTI_tool#Register_Moodle_with_the_platform ), enable the relevant plugins on the tool site and create a registration for the platform site On the tool site ensure that the LTI Authentication plugin is also enabled Continue on the platform site (admin > manage tools) to complete the registration (again, see docs) Now, still on the platform site, edit the preconfigured tool setting:  Tool configuration usage: "Show in activity chooser and as a preconfigured tool" Save the tool Click activate on the tool Now, go to the tool site. Create a course with one assignment Click "More -> Published as LTI tools" Make sure you're on the LTI Advantage tab and click "Add" Select the assignment under "Tool to be published" Click "Add method" Now, go back to the platform and sign in as admin Now, create a course with 5 students (s1..s5) Click to add an activity, selecting "Moodle" from the activity chooser Click "Select content" If you're not logged in to the tool site (and don't have an account binding), you'll be prompted. Just follow the prompts and relaunch the "Select content" as required Click the "Add to course" checkbox for the assignment you published before (add to gradebook will be automatically ticked) Click "Add content" When you're back on the activity edit page, save and return to the course Click the newly created activity Verify you can see the remote resource (the assignment) loaded in a frame (If not, did you enable frame embedding on the tool site?) Now, log out Log in to the platform as user s1 (one of the students) Go to the course and launch the tool Add a file submission and submit Log out Now, log in to the platform as the admin again Launch the tool from the course and click "Grade" for the assignment Add a grade for the user s1 and save Now, via the command line, in the root of the tool site, run: php admin/cli/scheduled_task.php --execute= "\enrol_lti\local\ltiadvantage\task\sync_grades" Verify the task completes without errors Now, in the platform (where you're logged in as an admin) go to the course (the platform course - make sure you're not navigating using the navigation inside the tool frame!) Go to grades Verify you see the grade you gave the student s1 Now, log out of the platform Log in to the tool site as the admin user Go to the course in which you published the assignment Go to participants Verify you see only the admin and s1 users there Now, via the command line, in the root of the tool site, run: php admin/cli/scheduled_task.php --execute= "\enrol_lti\local\ltiadvantage\task\sync_members" Verify the task completes without errors In the tool, refresh the participants page Verify you see the other members of the platform course now present in the list (s2 through s5)
    • 1
    • Team Hedgehog 4.1 sprint 0 rev, Team Hedgehog 4.1 pre 1.1

    Description

      A library used for building IMS-certified LTI 1.3 tool providers in PHP (lib/lti1p3) 5.1.0 --> 5.2.1

      https://github.com/packbackbooks/lti-1-3-php-library

      5.2.1 patched for inclusion in core:
      https://github.com/snake/lti-1-3-php-library/tree/moodle-fixes

      Attachments

        1. MDL-76002_1.png
          MDL-76002_1.png
          87 kB
        2. MDL-76002_2.png
          MDL-76002_2.png
          80 kB
        3. MDL-76002_3.png
          MDL-76002_3.png
          102 kB
        4. MDL-76002_4.png
          MDL-76002_4.png
          88 kB
        5. MDL-76002_5.png
          MDL-76002_5.png
          78 kB
        6. MDL-76002_6.png
          MDL-76002_6.png
          122 kB

        Issue Links

          Activity

            People

              jaked Jake Dallimore
              jaked Jake Dallimore
              Stevani Andolo Stevani Andolo
              Andrew Lyons Andrew Lyons
              Angelia Dela Cruz Angelia Dela Cruz
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                28/Nov/22

                Time Tracking

                  Estimated:
                  Original Estimate - 0 minutes
                  0m
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 day, 2 hours
                  1d 2h