lduarte1991 / hxat

Contains the currently-in-development project by HarvardX to bring the annotation tool currently living in the edX platform to a more accessible LTI implementation.
12 stars 7 forks source link

hx iss95: missing tool_consumer_instance_guid in lti-params #129

Closed nmaekawa closed 4 years ago

nmaekawa commented 4 years ago

This fixes issue #95.

When hxat is configured with settings.ORGANIZATION != HARVARDX, it is tacitly assumed to be working with canvas platform/consumer and expects the tool_consumer_instance_id to be sent in lti_params. This is used to distinguish the user_scope a user_id has: edx platform/consumer (HARVARDX) assigns a anonymous-id for a user in each course while canvas assigns the same user-id across all courses for a user. The user-scope is set to "course:" for edx and "consumer:" for canvas. This fix aims to have a default user_scope for when settings.ORGANIZATION != HARVARDX and the platform/consumer does not send the tool_consumer_instance_id, defaulting to user_scope "course:".

This hxat settings is somewhat mislabeled since the HARVARDX might have to work in the future with platform/consumers that do not send a tool_consumer_instance_id (this is an optional lti-param) and have user_scope to be across courses. This setting and its behavior should be reviewed in the future.