Upgrading Joomdle
This guide covers how to upgrade Joomdle to a newer version while keeping your existing configuration intact.
It is recommended to test the upgrade in a development environment first.
Before You Upgrade
- Back up your site — Take a full backup of your Joomla and databases and files before proceeding.
- Check compatibility — Verify that the new Joomdle version is compatible with your current versions of Joomla and Moodle.
- Read the release notes — Review the changelog for any breaking changes or special upgrade instructions for your target version.
- Visit Joomdle system check — Get a view of how your system is before you upgrade.
If you are upgrading from Joomdle 2.x to Joomdle 3.x read the specific documentation.
Upgrading the Joomla Component
- Download the latest Joomdle package from the official Joomdle website.
- In your Joomla admin panel, go to System → Install → Extensions.
- Upload the new Joomdle package file.
- Joomla will detect the existing installation and perform an upgrade automatically — your configuration will be preserved.
Upgrading the Moodle Plugin
- Download the latest Joomdle auth plugin for Moodle.
- In your Moodle admin panel, go to Site administration → Plugins → Install plugins.
- Upload the plugin ZIP file and proceed through the upgrade steps.
Upgrading from Joomdle 2.x to Joomdle 3.x
Important: Joomdle 3.x removes functionality from previous versions, including views, web services, and more. Please make sure to test the upgrade in a development environment first.
Upgrading from Joomdle 2.x to 3.x on Joomla requires a special step: you will need to disable/remove all Joomdle plugins first, before installing the Joomdle 3.x package.
Moodle side can be upgraded normally.
Manual checks for long-standing installations
If Joomdle was installed a long time ago, you may want to do some checks before upgrading.
The upgrade automatically updates the role with short name joomdlews and refreshes the functions in the service with short name joomdle. It is recommended to check your setup before upgrading from 2.x to 3.x: if you are not using the standard role and service short names, you can change them before upgrading. This will make the automatic upgrade process work as intented.
- Web service role. Go to Site administration → Users → Permissions → Define roles. Edit the dedicated web service role and change its short name to
joomdlews - External service. Go to Site administration → Server → Web services → External services. Edit the Joomdle service and change its short name to
joomdle
If you do this changes before upgrading, everything should be done automatically for you when yo upgrade.
Keeping custom short names
If you don't want to change your service short names, a different role/service name can continue to be used, but you will need to do some things manually:
-
Configure the web service role. Go to Site administration → Users → Permissions → Define roles. Edit the dedicated web service role used by your existing account and set the following capabilities to Allow. You can search for each capability by its identifier:
moodle/user:create,moodle/user:delete,moodle/user:update,moodle/user:viewdetails,moodle/user:viewalldetails,moodle/course:view,moodle/course:viewhiddencourses,moodle/category:viewcourselist,moodle/category:viewhiddencategories,moodle/course:viewparticipants,moodle/grade:viewall,moodle/site:configview,moodle/role:assign,moodle/role:review,moodle/course:enrolreview,enrol/manual:enrol,enrol/manual:unenrol,enrol/manual:manage,moodle/cohort:manage,moodle/grade:managegradingforms,moodle/course:managegroups,moodle/badges:viewotherbadges,report/completion:view,moodle/calendar:manageentries -
Allow course role assignments. On the Allow role assignments tab of Define roles, allow your web service role to assign Teacher, Non-editing teacher, and Student.
-
The plugin upgrade also adds newly defined web service functions and removes obsolete ones automatically. If System check reports missing functions, check the Joomdle service's Functions list against
auth/joomdle/db/services.phpfrom the installed plugin: add missing functions and remove functions no longer defined there.
After Upgrading
- Go to Components → Joomdle → System check in Joomla to verify the integration is still working correctly.
- Test the Single Sign-On flow by logging in as a test user and confirming access to Moodle courses.
- Clear Joomla and Moodle caches if you experience any unexpected behaviour.