Sharing Cart

From MoodleDocs

Version History

New >> Sharing Cart for 4.1 recommended, Sharing Cart 4.3 released for testing 2023.11.01

  • Block: Sharing Cart 1.9 release 1 - 2008.10.15
  • Block: Sharing Cart 1.9 release 2 - 2009.02.19
  • Block: Sharing Cart 1.9 release 3 - 2009.03.16
  • Block: Sharing Cart 1.9 release 4 - 2009.04.14
  • Block: Sharing Cart 1.9 release 5 - 2009.04.24
  • Block: Sharing Cart 1.9 release 6 - 2009.06.22 (upload/download to the Repository)
  • Block: Sharing Cart 1.9 release 8 - 2009.09.18 (update for Moodle ver. 1.9.5+)
  • Block: Sharing Cart 1.9 release 9 - 2009.11.30 (adds a bulk delete/empty cart feature)
  • Block: Sharing Cart 1.9 release 10 - 2009.12.28 (update for Moodle ver. 1.9.7, help revised)
  • Block: Sharing Cart 1.9 release 11 - 2010.01.26 (common module settings are now retained, icons follow theme)
  • Block: Sharing Cart 1.9 release 12 - 2010.02.12 (fixes a missing file bug introduced in release 11, tested OK on Moodle 1.9.9)
  • Block: Sharing Cart 1.9 release 14 - 2010.09.30 (fixes a minor bug where the Sharing Cart would strip the Grade Category from a graded module)
  • Block: Sharing Cart 1.9 release 15 - 2012.05.29 (supports Postgres)
  • Block: Sharing Cart 1.9 release 16 - 2012.12.05 (supports sticky blocks)
  • Block: Sharing Cart 2.1 beta release - 2011.07.31
  • Block: Sharing Cart 2.2 release 1 - 2012.04.26 (fixes a bug where multiple items copied into the SC, only the first item would copy out of the SC)
  • Block: Sharing Cart 2.2 release 2 - 2012.09.04 (this version is now also compatible with Moodle 2.3)
  • Block: Sharing Cart 2.3 release 1 - 2012.09.13 (new options: moving user data in glossary, forum, wiki and database activities)
  • Block: Sharing Cart 2.4 release 1 - 2012.12.05 (recommended update because new API in Moodle 2.4 hides Sharing Cart 2.3 admin settings)
  • Block: Sharing Cart 2.5 (Emma Richardson reports Sharing Cart 2.4 works in Moodle 2.5 with no problems)
  • Block: Sharing Cart 2.6 release 1 - 2014.01.07 (New backup format in Moodle 2.6 must be unchecked. Sharing Cart copies made with this new format should be deleted and recreated.)
  • Block: Sharing Cart 2.6 release 1, patch 2 - 2014.02.14 (no need to uncheck new backup format)
  • Block: Sharing Cart 2.6 release 1, patch 3 - 2014.02.24 (fixed AMOS parsor error)
  • Block: Sharing Cart 2.6 release 1, patch 5 - 2014.06.06 (solved AJAX error message)
  • Block: Sharing Cart 2.6 release 1, patch 6 - 2014.09.12 (later tested OK in Moodle 2.8.5+)
  • Block: Sharing Cart 2.9 release 1 - 2015.06.25 (fixed function change to test_core) ... +more changes over next four years
  • Block: Sharing Cart 3.6 release 1 2019.06.25 to release 11 2020.0310 (many changes, including section copy, copy with data)
  • Block: Sharing Cart 3.8 release 1 - 2020.03.15 (many interface improvements—listed below)
  • Block: Sharing Cart 3.8 release 2 - 2020.03.31 (fixed a bug where Firefox would not show icons properly)
  • Block: Sharing Cart 3.8 release 3 - 2020.04.15 (fixed a bug where section copy was not consistent)
  • Block: Sharing Cart 4.3 release 1 - 2023.11.01 (adapted sharing cart to new core backup system)
    • UI improvements in 3.8:
   **Icons converted to font-awesome.
   **Dropzones for moving are just empty white spaces.
   **Match dropzones when copying activity to section.
   **When expanding folders, it's easier to see which files belong there.
   **Labels with images now resize and just add the fullsize image.
   **Alerts/Confirm boxes should be modals.
   **Bulkdelete has a layout overhaul.
   **Loading boxes match moodle better
   **Bug fix for: When changing groupmode, or duplicating activity, the sharing cart icons disappear.
   **Bug fix for: PHP warning when adding activity to a subfolder, of an empty folder.
   **Bug fix for: Sometimes unable to delete folders, due to duplicate names and no user check.
   **Feature: Copy section dropdown in the block, due to some course formats preventing sharing cart from adding icons.
  • Block: Sharing Cart 3.10 release 6 - 2021.07.22 (improved section copy and tested in 3.11)
  • Block: Sharing Cart 3.10 release 8 - 2021.09.29 (tested and passed fix for Issue #101)


The Sharing Cart is a block for duplicating course items into a personal library and an easy way to move those Moodle resources and activities between multiple courses on your site. With just three clicks, the Sharing Cart copies and moves a single course item from one course to another. It copies without user data—similar to the “Import” function in Course Administration. From version 2.3, user content in Forums, Wikis, Glossaries and Databases can optionally be included. In addition, items can be collected and saved on the Sharing Cart indefinitely, serving as a library of frequently used course items available for duplication. The Sharing Cart is viewable only by teachers, course creators and administrators.


  1. Moodle version 3.6 or greater. Previous versions for 3.5 are also available.
  2. Javascript/AJAX: A browser with JavaScript and AJAX turned on in Moodle is required.
  3. MySQL 5.1, PostgreSQL 8.4, SQL Server 2008 (= MSSQL10): Postgres now supported.

Translations available

  • German (de)
  • Hebrew (he)
  • Spanish - Mexico (es_mx)
  • Chinese
  • Japanese


  1. now available for automatic download/upgrades from plugins directory
  2. or download latest 2.3--3.10 release from Github
  3. unzip the package
  4. using FTP, open your blocks folder in your moodle program folder on your site
  5. place the folder "sharing_cart" into the blocks folder
  6. go to "Notifications" in your site admin area, by clicking the button, you will enable the repository plugin, and automatically generate database tables
  7. inside any course, "Turn editing on", go to Blocks "Add...", and you should see "sharing cart" in the list of blocks in the menu.
  8. if you are going to share Quiz Questions, you may need to add a new system role called Question Creator (see note below in 'Roles')


  1. Turning On and Off: With editing on, add the Sharing Cart block from the "Add a Block" menu at the lower left of the screen. After adding the Sharing Cart block, you will notice the block stays "on" the next time you enter that course. When you go to another course, add the Sharing Cart block to that new course. Then you can see your Sharing Cart as you roam courses across a site. Click the "X" icon to turn "off" the Sharing Cart, although the contents of the Sharing Cart will remain there when you turn it on again.
  2. Copying to the Sharing Cart: You will notice a small "Copy to Sharing Cart" icon which appears after each resource or activity in the center column of a Moodle course. Click on that icon to send a copy of that resource/activity into the Sharing Cart. User data will be removed, only the activity itself will be cloned.
  3. Copying from the Sharing Cart: Click the "Copy to course" icon in Sharing Cart, then you will see many dotted boxes appear in the center column. Choose the location you wish to place your item, and it will be copied there directly.
  4. Making folders inside the Sharing Cart: Click the "move" icon on a course content item and an input box will appear. Input the name of the target folder there. To move an item into a folder, click the "Move to folder" icon in the Sharing Cart, then a drop-down list appears, and select the target folder. If you click the “Edit” button, you will replace the drop-down list with an input box.


Generally, the Sharing Cart will duplicate any activity in any course that a teacher has access to. However, quiz questions have another set of permissions independent of site roles. Therefore, if you experience difficulty sharing questions in Moodle 1.9 (i.e. students cannot view embedded audio or images), we recommend making a new role within your site:

  1. Add a new role—Question Creator: Make this role in Site Admin >> Users >> Permissions >> Define roles, and assign all teachers to this role (in addition to other roles they already have). This role should be given at least the following rights (set permissions to "Allow") under "Course": Manage Activities, Manage Files,Add new questions, Edit all questions, Edit question categories, Move all questions, Use all questions, View all questions.
  2. Set questions to System Question Category: If you set questions to course or activity level categories, you may not be able to share them.

TIP 1: ...Possibly add another role—Question User: If students are unable to view questions, make this role and assign all students to this role. Set to "Allow" the following permissions: Use all questions, View all questions.

These additional roles are likely not needed in Moodle 2.x, because of more robust ways to save media files.

Known Issues & Roadmap

  • It seems that two capabilities are required by a user in order to use the plugin in the most basic scenario (copying an item): 1) Restore activities (moodle/restore:restoreactivity); 2) Restore courses (moodle/restore:restorecourse). Therefore, programmers and administrators must be aware of this when granting permission to using the Sharing Cart. Currently there is an open issue of an exception thrown when a user does not have these two capabilities.
  • Some third party modules with incomplete backup/restore will not work with the Sharing Cart and may produce fatal errors. Here is what to do.Sharing Cart/Project Format Errors
  • If you make an administrator setting to enable "split restore" (Admin block>>Miscellaneous>>experimental>>split restore), the Sharing Cart will not work properly. To make it work, turn off split restore.
  • For future versions, depending on funding, we wonder if there is interest to build a locking mechanism to prevent the Sharing Cart from copying commercial works or items that the author does not want copied.

Issues to Consider

  • The Sharing Cart uses core code in 3.x that has had significant issues, which we expect will be fixed in Moodle 4.0 and 4.1. The legacy issues are: MDL-12403: Minimize questions in Question Bank-original “Backup/Import of single quiz includes all questions in database” Bug—critical; MDL-41924: Minimize questions in Question Bank-new; Voting for these issues may help the Sharing Cart provide better performance and user satisfaction. These issues are likely resolved in the roadmap for Moodle 4.0, due in late 2021.
  • Moodle has a sophisticated system of permissions for the Question Bank. Question categories can be limited to certain teachers. The Sharing Cart operates on the assumption that sharing of questions is desirable and little control is needed. We do not know all possible results that may happen if questions are copied and duplicated. For example, if the question was originally limited to a "Course" category, will it share perfectly to other courses and students? Please report to us any problems you find concerning this question. Before, we were recommending sharing questions with the "System" level question category because the philosophy of Moodle of collaboration and sharing. However, due to a long-standing bug in Moodle core, if you keep thousands of questions at the System level, it will slow down all sharing of quizzes, even to the point of crashing backup/restore.
  • Finally, if your administration wishes to have a high degree of control of questions and activities, the Sharing Cart may be too easy-to-use. In terms of site user policies, we believe sharing permissions should be broadly applied not just to administrators, but to all teachers. Your policy on sharing depends on your institutional culture and values.

Legacy Repository Connection in Moodle 1.9

Setup Repository Connection A custom repository for Moodle 1.9 was created in 2009 and connected with Sharing Cart 1.9, release 6--this was only set up for one repository—Moodle for Language Teaching. With the advent of the Moodle Hub in version 2.x, the custom repository of 1.9 was no longer needed. The link shows legacy instructions for connecting the Repository with Sharing Cart in 1.9


Moodle Partner Praxis of Denmark is now the primary maintainer of the Sharing Cart, with continuing support by Don Hinkelman, Alex Bias and others. The designers of this block were Don Hinkelman and Andy Johnson of the Moodle Association of Japan. This block was originally programmed by Akio Ohnishi and Tomonori Maruyama at Version2 Educational Web Development and released under GPL. Ponlawat Weerapanpisit contributed the section copy feature in 2017–2018. Tue Korsgaard and the programming staff of Praxis became a maintainer from November 2019. Funding has been provided by Sapporo Gakuin University, the University of Ulm, the Japan Association of Language Teaching—CALL SIG, and the Moodle Association of Japan. We welcome other contributors and especially thank Praxis for donating their time and doing a long-needed overhaul. For issues and suggestions, please contact Don and Tue on the Sharing Cart GitHub here ( or directly (hinkelman at

See also

[para Compartir]