Note: You are currently viewing documentation for Moodle 2.2. Up-to-date documentation for the latest stable version is available here: Sharing Cart.

Sharing Cart

From MoodleDocs
  • 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 in several cases of 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 2.1 beta release - 2011.07.31, (contact Don Hinkelman directly, hinkel at
  • 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)


The Sharing Cart is a block for duplicating a course item and an easy way to move Moodle content (resources, activities) between multiple courses on your site. You can share items among teachers or among your own courses. It copies and moves single course items without user data—similar to the “Import” function in Course Administration. Items can be collected and saved on the Sharing Cart indefinitely, serving as a library of frequently used course items available for duplication. It is viewable only by teachers, course creators and administrators. For further information, see General Developer Forum postings. 1.9 Release 6 also allows upload/download to a Moodle Repository.


  1. Moodle version 2.2. Previous versions from 1.9.4 - 1.9.9 available.
  2. PHP 5.3.3
  3. Javascript: A browser with JavaScript enabled even if you are not using AJAX. AJAX turned on is recommended but not required.
  4. MySQL 5.1, PostgreSQL 8.4, SQL Server 2008 (= MSSQL10): Postgres not fully supported in 1.9.
  5. Course Format: The Sharing Cart tested with three formats. Topics and Weekly formats supported as well as third party Project course format.


  1. download latest 2.2 release from Github
  2. download previous 1.9 release from CVS Contrib
  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')
  9. if you are going to upload/download from the Moodle for Language Teaching Repository, go down to point (5): Setup Respository Connection.


  1. Turning On and Off: With editing on, add the Sharing Cart block from the block menu. 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.

Setup Repository Connection

New in release 6--for now this is only set up for one repository--Moodle for Language Teaching. In early 2010, we will have a Repository version that any group can use in their teaching field or institution.

  1. Make an account on the Moodle for Language Teaching Repository site:
  2. Install the Sharing Cart block on your home site--download from CVS:
  3. Be sure to go to Admin >> Notifications to enable the Repository plugin.
  4. Click the "hammer tool" icon on your Sharing Cart to setup a connection to the Repository.
  5. Type this Repository URL: along with the Username and Password of your Repository account.
  6. Put an item from your home site into your Sharing Cart
  7. Click on the Repository icon next to that item
  8. Fill in the metadata information, and click "Register".
  9. You have uploaded your first contribution to the Repository and will receive 100 points registration bonus and 20 points for each item you upload.
  10. To download ("buy") items, you first view an item then click the "Buy" button. Normally it will "cost" you 10 points.
  11. Then go to your home site's Sharing Cart and click the "Download from Repository" button, located at the bottom of the cart.


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 (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.

Known Issues & Roadmap

  • Sharing Cart 2.x tested for one year, with 2.2 release 1 removing major bugs. Please send feedback directly to Don Hinkelman: hinkel at
  • Sharing Cart 1.9 works well with Moodle standard modules (activities and resources) including Hotpot. Tested OK with the Feedback Module. Please test it and tell us if your third party module does or does not work.
  • 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.
  • Media files are copied (not moved) to each instance of a new duplicate file. This solves many troublesome issues of permissions to access the files. However, for sites with restricted hard disk space, it may fill up space quickly.
  • When AJAX course editing is enabled on your site, dragging the Sharing Cart block to a new location in the blocks area may cause trouble temporarily—all blocks may freeze or all the folders freeze (this is a bug in Moodle core). To unfreeze the folders, reload the page.
  • From June 2009, release 6 of the Sharing Cart is able to move content to and from the Moodle for Language Teaching Repository. In the future it will be able to move items across any cooperating sites. To test with, download the latest Sharing Cart version from CVS. Or contact Don Hinkelman hinkel at
  • For future versions, depending on funding, we plan 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

  • Moodle 1.9 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. At the moment, we are recommending sharing questions with the "System" level question category.
  • 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.


This block was programmed by Akio Ohnishi and Tomonori Maruyama at Version2 Educational Web Development and released under GPL. The designers and maintainers of this block are Don Hinkelman and Andy Johnson. Funding is provided by Sapporo Gakuin University and the Japan Association of Language Teaching--CALL SIG. We welcome other contributors. For issues and suggestions, please contact Don on the Sharing Cart forums or directly (hinkel at

See also