From f1fa7b8e06a3838c068549617b4df31f86e1131e Mon Sep 17 00:00:00 2001 From: Eric Fischer Date: Mon, 19 Mar 2018 12:02:24 -0400 Subject: [PATCH] pass title/label to LTI consumers --- common/lib/xmodule/xmodule/lti_module.py | 3 +++ lms/djangoapps/courseware/tests/test_lti_integration.py | 3 +++ 2 files changed, 6 insertions(+) diff --git a/common/lib/xmodule/xmodule/lti_module.py b/common/lib/xmodule/xmodule/lti_module.py index 15aae2db56..d34de892f7 100644 --- a/common/lib/xmodule/xmodule/lti_module.py +++ b/common/lib/xmodule/xmodule/lti_module.py @@ -416,6 +416,7 @@ class LTIModule(LTIFields, LTI20ModuleMixin, XModule): # # This lets all plaintext through. sanitized_comment = bleach.clean(self.score_comment) + course = self.get_course() return { 'input_fields': self.get_input_fields(), @@ -437,6 +438,8 @@ class LTIModule(LTIFields, LTI20ModuleMixin, XModule): 'ask_to_send_email': self.ask_to_send_email, 'button_text': self.button_text, 'accept_grades_past_due': self.accept_grades_past_due, + 'context_title': course.display_name_with_default, + 'context_label': course.display_org_with_default, } def get_html(self): diff --git a/lms/djangoapps/courseware/tests/test_lti_integration.py b/lms/djangoapps/courseware/tests/test_lti_integration.py index b6be3737a8..ff70543305 100644 --- a/lms/djangoapps/courseware/tests/test_lti_integration.py +++ b/lms/djangoapps/courseware/tests/test_lti_integration.py @@ -46,6 +46,7 @@ class TestLTI(BaseTestXmodule): user_id = text_type(self.item_descriptor.xmodule_runtime.anonymous_student_id) hostname = self.item_descriptor.xmodule_runtime.hostname resource_link_id = text_type(urllib.quote('{}-{}'.format(hostname, self.item_descriptor.location.html_id()))) + course = self.store.get_course(self.item_descriptor.course_id) sourcedId = "{context}:{resource_link}:{user_id}".format( context=urllib.quote(context_id), @@ -94,6 +95,8 @@ class TestLTI(BaseTestXmodule): 'description': self.item_descriptor.description, 'button_text': self.item_descriptor.button_text, 'accept_grades_past_due': self.item_descriptor.accept_grades_past_due, + 'context_title': course.display_name_with_default, + 'context_label': course.display_org_with_default, } def mocked_sign(self, *args, **kwargs):