BYU-ARCLITE / Ayamel-Examples

A site which uses the resource library and provides example of the six levels of video playback.
11 stars 7 forks source link

Repurpose Sharing & Visibility Settings #701

Open gliese1337 opened 8 years ago

gliese1337 commented 8 years ago

As I have been working on creating an embedding system that will work with LTI, I have become very familiar with the "sharing" system. And it is a mess. It creates problems not just with making sure that all content has the right shareability setting, but also introduces complications into the rendering system where we have to check multiple times whether or not a user is currently logged in.

My first thought was to ask if we could just remove the sharing system entirely, and not worry about "shareability" anymore. Does anybody ever really share Ayamel pages to Facebook? I don't think so. However, I then realized that we might be able to turn "shareability" to a useful purpose, while solving some of the problems at the same time.

My proposal is that the sharing system be retro-fitted for LTI connection at the content (rather than course) level. Thus, if something is "shareable" by you, that would no longer mean that you can get a link to post to Facebook for it, but rather that you can get access to the LTI authentication credentials for that content.

This means that any shared content would always be accessed via LTI, and thus there would always be a logged-in user available (either because you were logged in already, or because LTI logged you in), which simplifies the code enormously; and it means that LTI consumers can embed individual content objects without needing to keep track of a course ID along with the content ID if they don't want to.

LTI authentication at the course level would, of course, still be possible.

While this does not remove the problem of ensuring that content objects all have the correct shareability settings, it does mean that giving them the wrong shareability settings is less disastrous; students who are erroneously given sharing access to restricted content might, for example, inappropriately put a link to it on Facebook, but they won't be able to do much with LTI credentials instead.

If we want to keep the current sharing functionality, so that links can be put on Facebook or whatever, I think that can be handled perfectly well by the "visibility" system- if content is marked "public", then anybody should be able to follow the regular content page link to it, and just be given a temporary guest view if they do not already have an account to log into.

DigitalProf commented 8 years ago

I really like the general idea described here, but I actually have been looking at the value of being able to share a video. Thus I don't believe we want to lose it. Rather than remove it, I can imagine a tool that makes it easier to control settings. I will also agree that we need to think through how this needs to work.