Skip to content

Software to securely facilitate student participatory research on a Moodle-based VLE for TeSLA.

Notifications You must be signed in to change notification settings

IET-OU/moodle-auth_ouopenid

Repository files navigation

Build status — Travis-CI js-semistandard-style OU-OpenID moodle plugin Accessibility testing

OU-TeSLA

moodle-auth_ouopenid

This project is a suite of Moodle plugins and software to facilitate student participatory research on a Moodle-based VLE, for the TeSLA project.

It provides a secure environment for OU students, parallel to but outside The Open University's Moodle-based VLE (OUVLE), and mimicking in a general way the OUVLE, but without interfering with the OU's course offering to students.

It was used by The Open University to run pilot studies with students in 2017-2018.

TeSLA project

  • 165 commits,
  • representing 2,680 lines of code,
  • it took an estimated 1 years of effort (COCOMO model)

Purpose

To facilitate pilot research studies using Moodle (e.g. for TeSLA) by:

  1. Enabling OpenID login using just a username, not a full URL (e.g. https://example.org/openid/{username}) (Extends 3rd-party OpenID plugin.)
  2. Simple login page with custom instructions (edit via Moodle language customisations) (/index.php),
  3. Importing pilot-related data into a separate DB table, mdl_auth_ouopenid_users,
  4. Making the pilot-related data available via /user/ajax.php,
  5. Redirects the participant to a custom URL ,
  6. CSS/LESS styles to hide parts of the Moodle user-interface to simplify the experience,
  7. Javascript & LESS fixes relating to the pilot study,
  8. Accessibility fixes for the pilot study,
  9. (And more)

See: CHANGELOG

(Note: this plugin probably needs splitting into two or more plugins!)

Available via IET-OU Satis:

Install

  1. To integrate within Moodle, either use the composer-based method described below, or unzip the code at:

    {PATHTOMOODLE}/auth/ouopenid

    Then, enable the plugin in the authentication plugins section of your Moodle's site administration.

  2. To test the plugin in standalone mode, install via Composer:

composer install
composer sym-links
composer npm-install
composer eslint-config
composer build

Test

composer test
composer eslint

Generate text-images

Re-create images of long-texts / poetry, to prevent copy-paste (e.g. for TeSLA keystroke dynamics pilot):

composer phantom-clone
composer text-srv
composer text-images

Site-wide Javascript and styles

Additional HTML - development

To embed the plugin's Javascript and stylesheet on every page:

  1. Visit the Additional HTML section of your Moodle's site administration;
  2. Copy and paste the HTML snippet below;
  3. Press the "Save changes" button.
<link href="/auth/ouopenid/style/ouop-styles.less" rel="stylesheet/less" />
<script src="/auth/ouopenid/dist.js"></script>

<script src="https://unpkg.com/less@2.7.2/dist/less.min.js"></script>

Additional HTML - live

<link href="/auth/ouopenid/style/ouop-styles.css?r=2017-08-16.a" rel="stylesheet" />
<script src="/auth/ouopenid/dist.min.js?r=2017-08-16.a"></script>

Developed for the TeSLA project.

License: GPL-3.0


© 2017-2018 The Open University. (Institute of Educational Technology)