18
18
from exercise .models import LearningObject , BaseExercise
19
19
from exercise .views import ExerciseView , SubmissionView
20
20
from userprofile .models import UserProfile
21
+ from lib .localization_syntax import parse_localized
21
22
from lib .viewbase import BaseTemplateView , BaseRedirectView , BaseMixin
22
23
from authorization .permissions import ACCESS
23
24
from .utils import get_tool_conf , get_launch_data_storage , get_launch_url
@@ -263,6 +264,15 @@ def post(self, request, *args, **kwargs):
263
264
li .set_tag (str (e .id )).set_score_maximum (e .max_points ).set_label (str (e ))
264
265
ags .find_or_create_lineitem (li )
265
266
267
+ parsed_languages = parse_localized (str (self .module ))
268
+
269
+ # is multilingual
270
+ if parsed_languages [0 ][0 ] is not None :
271
+ # either in english, or whatever the default language is
272
+ title = next ((lang for lang in parsed_languages if lang [0 ] == 'en' ), parsed_languages [0 ])[1 ]
273
+ else :
274
+ title = str (self .module )
275
+
266
276
# Send activity settings
267
277
deep_link = self .message_launch .get_deep_link ()
268
278
resource = DeepLinkResource ()
@@ -272,7 +282,7 @@ def post(self, request, *args, **kwargs):
272
282
"instance_slug" : kwargs ['instance_slug' ],
273
283
"module_slug" : kwargs ['module_slug' ]
274
284
})
275
- .set_title (str ( self . module ) ))
285
+ .set_title (title ))
276
286
return HttpResponse (deep_link .output_response_form ([resource ]))
277
287
278
288
# Get list of exercises in module
@@ -314,12 +324,20 @@ def post(self, request, *args, **kwargs):
314
324
# Send activity settings
315
325
deep_link = self .message_launch .get_deep_link ()
316
326
resource = DeepLinkResource ()
327
+ parsed_languages = parse_localized (str (self .exercise ))
328
+
329
+ # is multilingual
330
+ if parsed_languages [0 ][0 ] is not None :
331
+ # either in english, or whatever the default language is
332
+ title = next ((lang for lang in parsed_languages if lang [0 ] == 'en' ), parsed_languages [0 ])[1 ]
333
+ else :
334
+ title = str (self .exercise )
317
335
(resource .set_url (request .build_absolute_uri (reverse ('lti-launch' )))
318
336
.set_custom_params ({
319
337
"course_slug" : kwargs ['course_slug' ],
320
338
"instance_slug" : kwargs ['instance_slug' ],
321
339
"module_slug" : kwargs ['module_slug' ],
322
340
"exercise_path" : kwargs ['exercise_path' ]
323
341
})
324
- .set_title (str ( self . exercise ) ))
342
+ .set_title (title ))
325
343
return HttpResponse (deep_link .output_response_form ([resource ]))
0 commit comments