Moodle
  1. Moodle
  2. MDL-32301

LTI Tools don't allow instructor custom parameters

    Details

    • Testing Instructions:
      Hide
      1. Create an External Tool item (You can use a launch URL from https://lti-examples.heroku.com/index.html)
      2. Make sure Advanced options are shown, then enter something into the Custom Parameters field (like test=testing)
      3. Save the External Tool item, and open your favorite web inspector (Firebug, Chrome inspector, etc.)
      4. Perform a launch of the External Tool, and check the post data. You should see a custom_test=testing parameter passed in the launch (Look for launch.php under the network tab)
      Show
      Create an External Tool item (You can use a launch URL from https://lti-examples.heroku.com/index.html ) Make sure Advanced options are shown, then enter something into the Custom Parameters field (like test=testing) Save the External Tool item, and open your favorite web inspector (Firebug, Chrome inspector, etc.) Perform a launch of the External Tool, and check the post data. You should see a custom_test=testing parameter passed in the launch (Look for launch.php under the network tab)
    • Affected Branches:
      MOODLE_22_STABLE, MOODLE_23_STABLE, MOODLE_24_STABLE, MOODLE_25_STABLE
    • Fixed Branches:
      MOODLE_23_STABLE, MOODLE_24_STABLE
    • Pull Master Branch:
      MDL-32301_lti_instructor_params

      Description

      In the launch code, if allowinstructorcustom is blank or set to "never", the instructor is not allowed to supply their own custom parameters. When tool configurations are written, the allowinstructorcustom setting is left blank.

      We should change the behavior to allow custom parameters if allowinstructorcustom is not set, as there is not really a good reason to restrict people from editing them.

      Note that some tool providers require information in the custom parameters to indicate which resource should be launched and will not work until this is resolved. This will be a major issue for some tool providers.

        Gliffy Diagrams

          Activity

          Hide
          Mark Nielsen added a comment -

          Attaching a patch that changes the default behavior to allowing custom instructor params in the LTI launch.

          Show
          Mark Nielsen added a comment - Attaching a patch that changes the default behavior to allowing custom instructor params in the LTI launch.
          Hide
          Michael de Raadt added a comment -

          Thanks for providing a fix for that.

          I'll see if we can get this peer reviewed soon.

          Show
          Michael de Raadt added a comment - Thanks for providing a fix for that. I'll see if we can get this peer reviewed soon.
          Hide
          Dan Poltawski added a comment -

          Stealing this off Eloy for peer review

          Show
          Dan Poltawski added a comment - Stealing this off Eloy for peer review
          Hide
          Dan Poltawski added a comment -

          Hi Guys,

          Makes sense to me. Are you able to supply testing instructions and a git branch so we can properly credit you?

          thanks,
          Dan

          Show
          Dan Poltawski added a comment - Hi Guys, Makes sense to me. Are you able to supply testing instructions and a git branch so we can properly credit you? thanks, Dan
          Hide
          Chris Scribner added a comment -

          Testing instructions:

          1. Create an External Tool item (You can use a launch URL from https://lti-examples.heroku.com/index.html)
          2. Make sure Advanced options are shown, then enter something into the Custom Parameters field (like test=testing)
          3. Save the External Tool item, and open your favorite web inspector (Firebug, Chrome inspector, etc.)
          4. Perform a launch of the External Tool, and check the post data. You should see a custom_test=testing parameter passed in the launch

          Show
          Chris Scribner added a comment - Testing instructions: 1. Create an External Tool item (You can use a launch URL from https://lti-examples.heroku.com/index.html ) 2. Make sure Advanced options are shown, then enter something into the Custom Parameters field (like test=testing) 3. Save the External Tool item, and open your favorite web inspector (Firebug, Chrome inspector, etc.) 4. Perform a launch of the External Tool, and check the post data. You should see a custom_test=testing parameter passed in the launch
          Hide
          Chris Scribner added a comment -

          We don't really care about receiving credit, but if it makes it easier for you to get this included let me know and I'll set up a branch.

          Show
          Chris Scribner added a comment - We don't really care about receiving credit, but if it makes it easier for you to get this included let me know and I'll set up a branch.
          Hide
          Mark Nielsen added a comment -

          The fix can be cherry picked to stable branches.

          Show
          Mark Nielsen added a comment - The fix can be cherry picked to stable branches.
          Hide
          Dan Poltawski added a comment -

          Sent to integration, sorry I dunno how I keep missing these issues. If you could rebase it would be great, otherwise I think the integrator should be able to cherr-pick.

          Show
          Dan Poltawski added a comment - Sent to integration, sorry I dunno how I keep missing these issues. If you could rebase it would be great, otherwise I think the integrator should be able to cherr-pick.
          Hide
          Mark Nielsen added a comment -

          Rebased onto master, it's ready to go!

          Show
          Mark Nielsen added a comment - Rebased onto master, it's ready to go!
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Integrated (23, 24 & master), thanks!

          Show
          Eloy Lafuente (stronk7) added a comment - Integrated (23, 24 & master), thanks!
          Hide
          Andrew Davis added a comment -

          Seems to be working as described. Passing.

          Show
          Andrew Davis added a comment - Seems to be working as described. Passing.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Did you think this day was not going to arrive ever?

          Your patience has been rewarded, yay, sent upstream, thanks!

          Closing...ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Did you think this day was not going to arrive ever? Your patience has been rewarded, yay, sent upstream, thanks! Closing...ciao

            People

            • Votes:
              2 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: