From 0f0fa7a86cda87f7a4caebf377a29140bb251980 Mon Sep 17 00:00:00 2001 From: Mark Nielsen Date: Thu, 27 Jun 2013 13:29:35 -0700 Subject: [PATCH] MDL-38419: External tool - when force SSL checked, URLs get corrupted --- mod/lti/locallib.php | 2 +- mod/lti/tests/locallib_test.php | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/mod/lti/locallib.php b/mod/lti/locallib.php index 4c10fab37ae..5061952768b 100644 --- a/mod/lti/locallib.php +++ b/mod/lti/locallib.php @@ -1168,7 +1168,7 @@ function lti_ensure_url_is_https($url) { } else { //If the URL starts with http, replace with https if (stripos($url, 'http://') === 0) { - $url = 'https://' . substr($url, 8); + $url = 'https://' . substr($url, 7); } } diff --git a/mod/lti/tests/locallib_test.php b/mod/lti/tests/locallib_test.php index 2c3f3925b04..33a21878bb7 100644 --- a/mod/lti/tests/locallib_test.php +++ b/mod/lti/tests/locallib_test.php @@ -139,4 +139,10 @@ class mod_lti_locallib_testcase extends basic_testcase { lti_verify_sourcedid($ltiinstance, $parsed); } + + public function test_lti_ensure_url_is_https() { + $this->assertEquals('https://moodle.org', lti_ensure_url_is_https('http://moodle.org')); + $this->assertEquals('https://moodle.org', lti_ensure_url_is_https('moodle.org')); + $this->assertEquals('https://moodle.org', lti_ensure_url_is_https('https://moodle.org')); + } }