Activities: NLN Learning Object

Maintained by Picture of Tony ButlerTony Butler
An activity module that allows teachers to find and add NLN Learning Objects to their Moodle courses with a minimum of effort. Originally developed by as a Moodle 1.8 resource type, the "Noodle" plugin ceased to be maintained when the NLN Materials website changed hands in July 2011. This new development is a direct conversion of the original plugin into a Moodle 2.x activity module.

NLN Learning Object 2.3

Release notes

Readme file for the NLN Materials Moodle Browser (codename: Noodle)

Noodle is a plug-in module for Moodle systems that allows Moodle users to find and use NLN Materials with a minimum of effort. Noodle was developed by - the developers of the NLN Materials delivery site, as an additional service to our users.
The benefits include:
For administrators:
- no need to create and maintain a repository.
- works alongside but completely independently of local repositories.
- simple installation.
- materials are still hosted on the site, so users will see all updates and fixes, and you may save bandwidth

For practitioners:
- no need to log-in separately
- powerful search and browse functionality, specifically tailored for the NLN Materials (e.g. browse by level)
- easy access to supporting information, such as tutor guides, LO-specific FAQ questions etc.
- no need to leave the Moodle interface
- no need to understand SCORM and related technologies
- no need to deal with any downloading/unzipping/uploading/or installing of files

More information about Noodle is available at []. Information about updates and new versions is now available at [].

This is version 2.3.

Version Info
V0.1 - first release.
V0.2 - fixes compatibility with Moodle 1.8, by a modification in line 74 of resource.class.php, checking that the function build_navigation() exists.
V0.3 - fixes a bug that caused resources not to be added to the database in some environments.
V0.4 - fixes a compatibility problem with PHP4 (line 167 of resource.class.php). This version works with PHP4 and PHP5.
V1.0 - a significant update, with significant updates to this readme, and changes to both browse_start.php and resource.class.php that:
- within the Moodle resource add/edit page, fixes the issue of the name field dragging back focus when the "browse" button is clicked
- fixes a harmless typo in one of language strings given in step 4 of the installation instructions
- adds the ability to launch the browser at a text search result (for integration with other modules, such as MrCute). (See customisation section below.)
- adds the ability to customise the text of the "add to Moodle course" button within Noodle. (See customisation section below.)
- uses a new URL within browse_start.php ( rather than (Both point to the same location, but the new URL helps us with tracking usage.)
V1.1 - due to changes in the NLN site on July 23rd 2011 (see the FAQ at [] for more info). Since the site no longer requires authentication, this has been removed from this version. However, V1.0 will continue to work fine, so there's no need to upgrade from V1.0 to V1.1.
V2.2 - conversion from Moodle 1.x resource type to Moodle 2.x activity module. Tested with Moodle 2.2.
- includes a migration script to automatically convert any existing NLN resources in a Moodle 1.9 instance during an upgrade to Moodle 2.
- supports backup/restore functionality, including restoring from a Moodle 1.9 backup (see "Installation" section below).
- incompatible framed and embedded display options removed.
V2.3 - added 'mod/nln:addinstance' capability and 'modulename_help' string for Moodle 2.3.

Note that since the bulk of functionality happens on the NLN site, changes in functionality may occur within the Noodle pop-up without requiring a new version of Noodle or a new download. Any significant changes of functionality will be explained on the Noodle page of the NLN website.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see [].

By installing this software package and using it (or any derivative) to connect to the NLN site, you are also agreeing to the NLN Materials usage license ON BEHALF OF ALL MOODLE USERS WHO WILL BE GIVEN ACCESS TO IT. For more information please see [].

The GPL license confers no rights to the site itself (including the pages from the site exposed by Noodle).

Noodle was developed by Xtensis during their role as developers of the service, and was released free of charge as a (hopefully) useful additional service to the NLN Materials community. As of July 23rd 2011, Xtensis have no ongoing involvement in developing or supporting the NLN service, and as such, there is no ongoing formal support for Noodle. A dedicated thread on the forums has been set up at [].

Note, if you are upgrading an existing Noodle installation, please see the "Version Info" section above.

Installing from the Git repository (recommended if you installed Moodle from Git):
Follow the instructions at [], e.g. for the Moodle 2.2.x code:
$ cd /path/to/your/moodle/
$ cd mod
$ git clone git:// nln
$ cd nln
$ git checkout -b MOODLE_23_STABLE origin/MOODLE_23_STABLE
$ git branch -d master
$ cd /path/to/your/moodle/
$ echo /mod/nln/ >> .git/info/exclude

Installing from a zip archive downloaded from []:
1. Download and unzip the appropriate release for your version of Moodle.
2. Place the extracted "nln" folder in your "/mod/" subdirectory.

Whichever of the above methods you use to get the module code in place, the final step is to visit your Site Administration > Notifications page in a browser to invoke the installation script and make the necessary database changes.

Note: if you wish to restore NLN resources from course backups created with Moodle 1.9.x, you will also need to make a slight modification to your /mod/resource/backup/moodle1/lib.php file.
A diff patch named moodle1_restore.patch is supplied in the root directory of the NLN module to facilitate this modification. Please see the instructions at [] if you need help applying the patch.

Updating Moodle
If you installed Moodle and the NLN module from Git you can run the following commands to update both (see []):
$ cd /path/to/your/moodle/
$ git pull
$ cd mod/nln
$ git pull

In this case it will not be necessary to apply the diff patch again.

If you installed from a zip archive you will need to repeat the installation procedure using the appropriate zip file downloaded from [] for your new Moodle version.
In this case you will also need to re-apply the patch as above, if you still need the functionality to restore from Moodle 1.9 backups.

Informing Moodle users
After installing, we suggest notifying your Moodle course editors and letting them know what's available. You can find simplified instructions - which presume no prior knowledge of the NLN materials or the main NLN site - at []. It is suggested that Moodle admins take the concise instructions given there and distribute them, with any relevant modifications, to their users.
Moodle 2.3

Version information

Version build number
Version release name
Can be updated from
2.0, 2.2, 2.2.1, 2.2.2, 2.2.3 (2012042500)
Can be updated to
2.4 (2013052800), 2.5, 2.5.1 (2013070900), 2.6.0 (2014061200), 2.7.0 (2014061201), 2.9.0 (Build: 20150521) (2015052100), 3.0.0 (Build: 20160408) (2016040800), 3.0.0 (Build: 20160408) (2016040800)
Stable version
MD5 Sum
Supported software
PHP 5.3, PHP 5.4, Moodle 2.3
  • This is the latest release for Moodle 2.3

Version control information

Version control system (VCS)
VCS repository URL
VCS branch

Default installation instructions for plugins of the type Activities

  1. Make sure you have all the required versions.
  2. Download and unpack the module.
  3. Place the folder (eg "assignment") in the "mod" subdirectory.
  4. Visit to finish the installation