{"id":19591977,"url":"https://github.com/catalyst/moodle-auth_enrolkey","last_synced_at":"2025-10-16T09:44:13.809Z","repository":{"id":8175591,"uuid":"57103652","full_name":"catalyst/moodle-auth_enrolkey","owner":"catalyst","description":"Much simpler 1-step registration and enrolment using course enrol keys","archived":false,"fork":false,"pushed_at":"2025-01-05T23:08:57.000Z","size":236,"stargazers_count":11,"open_issues_count":23,"forks_count":19,"subscribers_count":22,"default_branch":"MOODLE_35_STABLE","last_synced_at":"2025-04-05T00:51:12.531Z","etag":null,"topics":["enrollment","enrolment-key","moodle","moodle-plugin"],"latest_commit_sha":null,"homepage":"https://moodle.org/plugins/auth_enrolkey","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/catalyst.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-26T06:28:40.000Z","updated_at":"2025-03-28T16:56:13.000Z","dependencies_parsed_at":"2024-01-16T03:33:19.694Z","dependency_job_id":null,"html_url":"https://github.com/catalyst/moodle-auth_enrolkey","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/catalyst%2Fmoodle-auth_enrolkey","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/catalyst%2Fmoodle-auth_enrolkey/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/catalyst%2Fmoodle-auth_enrolkey/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/catalyst%2Fmoodle-auth_enrolkey/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/catalyst","download_url":"https://codeload.github.com/catalyst/moodle-auth_enrolkey/tar.gz/refs/heads/MOODLE_35_STABLE","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251154664,"owners_count":21544536,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["enrollment","enrolment-key","moodle","moodle-plugin"],"created_at":"2024-11-11T08:32:20.215Z","updated_at":"2025-10-16T09:44:08.783Z","avatar_url":"https://github.com/catalyst.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Moodle Enrolment key based self-registration\n\n![GitHub Workflow Status (branch)](https://img.shields.io/github/actions/workflow/status/catalyst/moodle-auth_enrolkey/ci.yml?branch=MOODLE_35_STABLE)\n\nThis auth plugin combines the best of both email based signup and self enrolment keys into a streamlined process making it much faster for students to get into a course. For the student it saves around 9-10 clicks and avoids context switching between a browser and their email client where they can become easily become disengaged or run into issues if their email is unavailable.\n\nThis is mostly a clone of the Email-based self-registration plugin that also enrols a user into available courses based on a token supplied. When a user enters a valid token it will automatically enrol them into the course that token was specified for, and then take them directly to that course. Also an optional bonus setting: because they have demonstrated knowledge of a secret code we know they are a real human so we let them straight in without forcing them to confirm their email. For some use cases where they may login and complete their course in a single session we may not ever care about their email being valid.\n\nCourses that provide self enrolment can restrict access to them with a key. If the signup token matches any course enrolment key then the new user will be enrolled into those courses.\n\nFound in the Moodle plugins directory at [https://moodle.org/plugins/auth_enrolkey](https://moodle.org/plugins/auth_enrolkey)\n\nThis also has a companion block plugin:\n\nhttps://github.com/catalyst/moodle-block_enrolkey\n\nhttps://moodle.org/plugins/block_enrolkey\n\n* [Branches](#branches)\n* [Installation](#installation)\n* [Setup](#setup)\n* [Settings](#settings)\n* [Admin Usage](#admin-usage)\n* [Client Usage](#client-usage)\n* [TODO](#todo)\n* [Support](#support)\n\n\nBranches\n--------\n\n| Moodle version    | Branch           | PHP   |\n|-------------------| ---------------- | ----- |\n| Moodle 3.5 to 4.5 | MOODLE_35_STABLE | 7.1+  |\n\nInstallation\n------------\n\nAdd the plugin to /auth/enrolkey/\n\nRun the Moodle upgrade.\n\nSetup\n-----\nFirst enable the Enrolment key based self-registration plugin for use.\n\n`Site administration \u003e Plugins \u003e Authentication \u003e Manage Authentication`\n\nOn the same page that you manage authentication options, scroll down to the common settings and select `Enrolment key based self-registration` in the Self Registration drop down list for `registerauth`.\n\nEnable the Self enrolment plugin.\n\n`Site administration \u003e Plugins \u003e Enrolments \u003e Manage enrol plugins`\n\nSettings\n--------\n\nIt is possible to force the the enrolment key as a required element for signing up.\n\nUsers can be forced to confirm their account via email even when entering a valid token.\n\nAdmin Usage\n-----------\n\n## Course enrolment keys\n\nEnable a new Self enrolment method in the course required.\n\nMoodle 3.5 to 3.11, `Course administration \u003e Users \u003e Enrolment methods \u003e Add method \u003e Self enrolment`\n\nMoodle 4.0+, `Participants \u003e Enrolments \u003e Enrolment methods \u003e Add method \u003e Self enrolment`\n\nThe Enrolment key field that is visible will be used for the automatic enrolment on signup.\n\nWhen creating new Self enrolment method, provide a custom instance name that is descriptive enough to determine how and when this specific instance will be used for enrolling.\n\nPlease add additional Self enrolment methods for the course that you require automatic enrolment access for.\n\n## Group enrolment keys\n\nIf you select `Use group enrolment keys: Yes` during creating of a new Self enrolment method, it enables a functionality of automatic adding self enrolled students to the groups created in the course.\n\nIn order for that to work, create a group in the course and specify `Enrolment key`.\n\nPlease note, that this key must be different from the course enrollment key which you set in the course Self enrolment method.\n\nAs a result, students will be able to subscribe using the group enrolment key. That will enrol them to the course where the group was created and also will add them to that group.\n\nClient Usage\n------------\n\nWhen a user tries to log in they are given the option to create an account.\n\nThe user can enter a token into the field name `Enrolment key`.\n\nThere is an optional setting that can force this field to be required.\n\nIf the token matches **any** valid instance of self enrolment, then the user will be enrolled to those courses.\n\nTODO\n----\n\nAdd option to bypass view.php, this may not be required if only enroling into one course.\n\nSupport\n-------\nFor any issue with the plugin, please log the in the github repository here:\n\nhttps://github.com/catalyst/moodle-auth_enrolkey/issues\n\nPlease note our time is limited, so if you need urgent support or want to\nsponsor a new feature then please contact Catalyst IT Australia:\n\nhttps://www.catalyst-au.net/contact-us\n\n\n\nThis plugin was developed by Catalyst IT Australia:\n\nhttps://www.catalyst-au.net/\n\n\u003ca href=\"https://www.catalyst-au.net/\"\u003e\u003cimg alt=\"Catalyst IT\" src=\"https://cdn.rawgit.com/CatalystIT-AU/moodle-auth_saml2/master/pix/catalyst-logo.svg\" width=\"400\"\u003e\u003c/a\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcatalyst%2Fmoodle-auth_enrolkey","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcatalyst%2Fmoodle-auth_enrolkey","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcatalyst%2Fmoodle-auth_enrolkey/lists"}