If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Moodle Repository Plugin

From MoodleDocs

This functional specification is STILL UNDER CONSTRUCTION."

Functional Specification Revisions:

0.1 - 27/06/2008 - Jerome Mouneyrac - Draft Version
0.2 - 25/09/2008 - Jerome Mouneyrac - Updated draft version




not implemented (MDL-15352)


This document is a functional specification for a Moodle Repository Plugin (also referenced as Remote Moodle Repository Plugin). The Moodle Repository plugin allows users to browse a foreign Moodle site in the File Picker. The user sees all the files/data he has access to there and is able to choose them.


  • Moodle administrator sets which Moodle peers will be available in the file picker (one remote Moodle repository instance = one peer)
  • Administrator needs to have "Enable SSO-IDP publish, and SSO-SP subscribe" for the peer
  • Remote Moodle Administrator needs to have "Enable SSO-IDP subscribe, and SSO-SP publish" for the "file picker" Moodle peer
  • Administrator can change the name and peer of a remote repository instance
  • Administrator can add/delete a remote repository instance
  • Administrator can add/delete remote repository plugin
  • A teacher cannot set a remote Moodle repository at the course level (except if the administrator allowed it)
  • Moodle user cannot set a remote Moodle repository at personal level (except if the administrator allowed it)
  • Only people with roles that have "Roam to a remote Moodle", moodle/site:mnetlogintoremote, will see the Remote Moodle repository into the file picker (See Moodle Networking)
  • Remote repository display content as the Local repository plugin does. (The remote Moodle plugin behave exactly as if the user was using the file picker in Local. Note that there is no enrolment into a course from the file picker)

User Interface

Administration: Peer Settings

In the Peer Service tab: the administrator can choose whether to activate the SSO for Repository services.

Administration: Plugin Settings

The administrator can add/delete the Remote Moodle Repository plugin. No settings are needed at the plugin level.

Administration: Instances Settings

A Moodle administrator can add/delete/edit instances. For an instance he can set:

  • Name
  • Moodle Peer

File Picker

When a user clicks on the Moodle repository, Moodle remote content is displayed. It is exactly the same content that would be displayed if the user was using the Local repository plugin in this remote Moodle.

Use Cases

UC004-1 Download a file from a remote Moodle Repository

Base scenario

  1. User opens a file picker
  2. User selects the "Other Moodle" in the file picker
  3. System displays the file system of the other Moodle
  4. User selects a file

Pre conditions

- The Moodle Repository plugin is been installed and activated
- Networking has been turned on and a Moodle peer has been set up
- A Moodle Repository instance has been created called "Other Moodle" (in this example)

Post conditions

- The file has been added to the html editor/parent field

See also