celtic-project / wordpress-lti

LTI Connector for WordPress
GNU General Public License v3.0
23 stars 11 forks source link

Comment or suggestion regarding use of this tool as SSO from VLE to WP platform #1

Closed spinozarabel closed 3 years ago

spinozarabel commented 6 years ago

Greetings,

Thank you for this excellent software. I have been using ver 1.2 for the last one year as a SSO to a pre-created wordpress multi-site from my Moodle install. The WP multi-site serves as an Intranet, completely closed off to outsiders. Each site of the multisite is an Intranet for a particular group and access is controlled via VLE.

I had to modify the code slightly as follows: (basically prevent blog creation, route to appropriate site based on title of LTI activity passed from VLE. $path=''; // initialize the $path variable to null. // search for hsea or hsmhc in the title and then switch the site path accordingly if (preg_match("/\bhseaemployees\b/i", $tool_provider->resource_link->title)) { $path='hseaemployees'; $role = 'subscriber'; } if (preg_match("/\bhsea\b/i", $tool_provider->resource_link->title)) { $path='hsea'; $role = 'subscriber'; } if (preg_match("/\bhsmhc\b/i", $tool_provider->resource_link->title)) { $path='hsmhc'; $role = 'subscriber';

dbnschools commented 6 years ago

Spinozarabel, Do you think this plugin could be used for both blog creation and for just allowing controlled SSO viewing access?

dbnschools commented 6 years ago

Does this code affect the connection URL such as http:site/?lti which is added to Moodle?

If so, could I add a path to only do SSO such as "http://site/?viewonly" and then any connection that comes in from there would be given subscribe role only?

I'm trying to use this plugin for both blog creation (which is default) and view only.

spvickers commented 6 years ago

What behaviour would you expect when a view only launch is executed and the blog does not exist? Does the choice between blog creation mode and view only mode depend upon the user's role in the course?

dbnschools commented 6 years ago

I would expect it to just fail and let the user know that resource isn't available.

I am asking because we have a Pressbooks Wordpress setup and we want to do both OER content creation and then be able to use this plugin to export from wordpress and course cartridge that loads individual links into Moodle to pages on the blog: https://github.com/lumenlearning/candela-thin-exports

I was also hoping to make the candela plugin work with your LTI plugin here since it seems more robust with the blog creation.

If I was able to get this working we would have a complete Open Educational Resource creation and distribution tool built using open source.

spvickers commented 6 years ago

OK, thanks. So what remains unclear to me is how the blogs get created. Are you wanting to be able to specify a particular blog to be connected to a link within the tool consumer course? Or will the course contain a link for blog creation and another for blog viewing?

dbnschools commented 6 years ago

I was hoping that if in Moodle the LTI connection was http://siteurl/?lti then it would allow blog creation. Then, with another Moodle LTI connection say, http://siteurl/?viewonly then it would register users on the connected blog as view only subscribers.

dbnschools commented 6 years ago

It would all depend on the LTI Launch URL as to what functionality was allowed - blog creation or view only access.

dbnschools commented 6 years ago

For the viewonly you might need to include a blog ID # or some other way to identify which blog the users would be subscribed to during launch. The Candela plugin uses: https://books.dearbornschools.org/api/lti/3?page_id=5 where 3 is the blogID# and page_id corresponds to the single page/post within the Pressbooks Wordpress blog.

spvickers commented 6 years ago

Since the blogs are private to the course which created them, this would normally mean that launches from any other course or VLE instance would not have access. What I think you are asking for is some mechanism by which a blog owner may give permission for users launching from another course/VLE instance to have view only access to their blog. This might be possible using the "share key" extension in the LTI library being used, but will require a little more thought. The key here is to ensure that the blog owner controls access to the blog as I assume you are not wanting to make it publicly available.

dbnschools commented 6 years ago

Yes. That is correct. But when we say blog, I am actually thinking Pressbooks. You can see an example here: https://books.dearbornschools.org/WP3-H5WN9M171/ The Candela thin common cartridge plugin exports this book and each chapter/page shows up in Moodle as an individual link to that resource.

We'd like teachers to be able to build a Book by simply launching it from Moodle as an activity which your plugin does well. Then, once the teacher and their class builds a book we'd like to allow others to embed it. The idea here is to possibly build Open textbooks and resources that can be shared and embedded in Moodle.

The key is not only getting view only access but also the exporting as a common cartridge. It's sounding a bit more complicated as we hash things out.

dbnschools commented 6 years ago

If we could get your plugin to work in harmony with the Candela LTI plugins on a single wordpress site then we'd have our complete working solution.

The issue is trying to operate two LTI plugins looking for connections and LTI seems so complicated for us.