Your Moodle version

Assignment submissions : Mahara Assignment Submission

Maintained by Mahara logo Aaron Wells, Picture of Tony Box Tony Box, Picture of Ruslan Kabalin Ruslan Kabalin
Allows grading of Mahara portfolio pages & collections in Moodle.
Moodle 2.3, 2.4, 2.5

Mahara Assignment Submission Plugin

This repository houses an updated Mahara assignment submission plugin.


  • XML-RPC integration with a Mahara installation
  • The student selects one of their Mahara portfolio pages or collections as a Moodle assignment submission
  • If multiple submissions are allowed, it releases the previously selected submission
  • Abides by Moodle assignments config options
  • Popups for quickly previewing submissions (no windows... no tabs)
  • Mahara pages can be made to lock upon submission, and unlock upon grading. Or stay permanently locked. Or not lock at all.
  • Unlock-on-grading functionality also supports marking workflow. Submitted pages will unlock when the workflow state changes to "Released".



  1. Make sure that your Moodle and Mahara versions are up to date.
  2. Connect your Moodle and Mahara sites via MNet. (For detailed instructions see the Mahara wiki).
  3. If you are using Mahara 1.9 or earlier, apply the included patch file "mahara-patch.txt" to your Mahara site.
  4. If you are using Moodle 2.6, apply the included patch file "moodle-patch.txt" to your Moodle site.
  5. If you are using Moodle 2.5 or earlier, install the Mahara local plugin now.
  6. Install this plugin the normal way: by using the Moodle web installer, or by extracting the plugin archive to {Moodle_Root}/mod/assign/submission/mahara and going to the admin "Notifications" page.
  7. Once the plugin is installed, go to "Site administration -> Networking -> Manage Peers". Select the peer record for your Mahara site, click on the "Services" tab, and subscribe to the "Assign Submission Mahara services" service.
  8. Open the "Site admin" -> "Plugins" -> "Activity modules" -> "Assignment" -> "Submission plugins" -> "Mahara portfolio" and configure default locking behavior.
  9. Now you may create your first Mahara assignment.

Upgrading (Moodle 2.6 or later)

There were previously two different forks of the Mahara assignment submission plugin for Moodle, one developed by the University of Portland, and another by Lancaster University. This plugin is designed to allow you to upgrade from either. It will automatically detect which version of the plugin you have installed, and migrate it accordingly. So all you need to do is:

  1. Remove the current contents of your mod/assign/submission/mahara directory.
  2. Follow the steps under "Installation" above. (This will trigger the database upgrade script.)
  3. If you are using Moodle 2.7 or later and you have previously installed the Mahara assignment feedback plugin (mod/assign/feedback/mahara), the upgrade will prompt you to uninstall it. You will then need to remove its directory.
  4. If you have also installed the Mahara local plugin (local/mahara), you should now uninstall it and remove its directory.

NOTE: If you were using the Mahara assignment feedback plugin before, you need to upgrade this assignment submission plugin before uninstalling the assignment feedback plugin. This is to allow the per-assignment locking settings from the feedback plugin to be migrated into the replacement system in the submission plugin.


  1. Go into a Moodle course as a teacher.
  2. An an "Assignment" activity to the course.
  3. Under the assignment's "Submission types" section, you should see an option for "Mahara portfolio". Tick this box, and any others you also want the student to include in their submission.
  4. Use the "Lock submitted pages" menu to choose whether you want submitted Mahara pages & collections to be locked from editing in Mahara. This feature is useful if you wish to prevent students to edit the page after the submission deadline.
  5. Once the assignment is set up, a student in the course will see a screen to let them select one of their Mahara portfolio pages or collections as part of their assignment submission.
  6. As the teacher, when you view the assignment submission via the gradebook, you will see a link that will allow you to view the submitted Mahara page or collection. (The plugin will automatically generate the access rights in Mahara).
  7. See the Readme for more details.

Feedback plugin (Moodle 2.6 only)

In Moodle 2.6, if you set the plugin to lock submitted pages & collections, they will remain locked in Mahara permanently. If you wish them to become unlocked once they are graded, you should also install the Mahara assignment feedback plugin, and activate it in your assignment.


Please use plugin repository bug tracker for reporting issues.


The original Moodle 1.9 version of these plugins were funded through a grant from the New Hampshire Department of Education to a collaborative group of the following New Hampshire school districts:
  • Exeter Region Cooperative
  • Windham
  • Oyster River
  • Farmington
  • Newmarket
  • Timberlane School District

The upgrade to Moodle 2.0 and 2.1 was written by Aaron Wells at Catalyst IT, and supported by:

  • NetSpot
  • Pukunui Technology

The upgrade to the Moodle 2.3 mod/assign plugin was developed by:

  • University of Portland by Philip Cali and Tony Box (
  • University of Lancaster

Subsequent updates to the plugin were implemented by Aaron Wells at Catalyst IT, with funding from:

  • University of Brighton
  • Canberra University

The upgrade to use events for unlocking behaviour and supporting grading workflow was developed by Lancaster University.


This plugin is part of set Mahara assignment.

Potential privacy issues

Mahara pages & collections submitted by the student will be visible to the teacher (or any Moodle user who can view the gradebook), regardless of their privacy settings in Mahara. The plugin generates a special "secret URL" for this purpose, which it links to in the Moodle gradebook. This acts like any other Mahara "secret URL", except that the student cannot delete it, and it will only work for users who are logged in to Mahara via MNet. If the page is released after grading, the "secret URL" will be disabled at that time.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5


Mahara logo
Aaron Wells (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Roland Sherwood
    Wed, Sep 25, 2013, 11:13 PM
    Hi. Please ignore the above; I completely forgot the local plugin also adds a new set of MNET-related publish/subscribe settings on our Mahara peer's services page. With subscribe ticked, a list of the user's Mahara pages is now visible on the assignment submission page.

    However, we've hit another snag; for students who've created only a single page on Mahara, selecting that page and then clicking the save changes button results in a warning message which states 'Nothing was selected' (above which there's also the outline of what looks like another warning, although it contains no visible text). Please see the following example:

    Interestingly, on exiting the page and re-entering the assignment, the status of the assignment is then shown as draft, the edit and submit assignment buttons are visible - but no link to the selected page is present where you'd expect it to be:

    And after submitting nothing (in terms of a link to the selected page) is then shown to either the student or tutor:

    Where a student has created more than 1 page, clicking the save changes button then results in the following error:

    Notice: Undefined variable: release_previous in /var/www/moodle/mod/assign/submission/mahara/locallib.php on line 510 Fatal error: Function name must be a string in /var/www/moodle/local/mahara/optionalib.php on line 78

    Reentering the assignment this time does show a selected page link:

    However, if the student then tries to edit their submission (i.e. select a page different from the one chosen previously), after clicking save changes and being brought back to the submissions summary page nothing appears to have changed. The selected page shown will be the same as before. You can see this in action here:

    Any suggestions or help would be very much appreciated - otherwise I think we'll have to revert back to the 2.2 plugins.

  • Picture of Tony Box
    Thu, Sep 26, 2013, 12:47 AM
    Hi Roland,

    Thanks a bunch for the detailed bug report. Would you please add it to the bug tracker on GitHub?

    You can find the link to the bug tracker up above, within the "Useful Links" section which is below the description of the plugin.

  • Picture of Bei Chapman
    Thu, Jul 17, 2014, 3:58 AM
    Hi Tony,

    I am very new to Mahara thing. Today I installed these 3 Mahara plugins (assignment submission, feedback and local) into my moodle dev environment, which is using Moodle 2.6.2 and PHP 5.3.3. I haven't studied and touched Mahara instance on a separate site.

    However, when I go to course, and try to add an assignment, I get the following error:
    "QuickForm Error: nonexistent html element Element 'assignsubmission_mahara_enabled' does not exist in HTML_QuickForm::removeElement()"

    Basically the assignment tool is not usable now.

    Any ideas what I did wrong here?

    Thanks a lot.
  • Paul
    Fri, Dec 19, 2014, 4:08 AM
    Will this tool work with Moodle 2.7 and 2.8? Further, does it work with Mahara 1.10?
  • Picture of Tony Box
    Fri, Dec 19, 2014, 7:53 AM
    Hi Paul,

    This version of the plugin will no longer be supported and is going to be replaced by a new version that will work with moodle 2.6+. The new version is going to be maintained by the Mahara team themselves. An added bonus is that the local plugin will no longer be needed.

    If you check back sometime next week or possibly early January, the Mahara assignment submission and feedback plugins will both be updated with the newest versions.

  • Picture of Chris Kenniburg
    Wed, Mar 11, 2015, 11:16 PM
    I just tried out the latest version from February 10th, 2015 and I am most impressed.
    This version seems to work flawlessly with our setup and I greatly appreciate your work on this. I love that our teachers can grade portfolio pages right in Moodle. Great job to all involved.
  • Mahara logo
    Thu, Mar 12, 2015, 10:15 AM
    Thanks Chris, I'm glad to hear it!
  • Picture of Anis Jradah
    Wed, May 27, 2015, 4:23 PM
    Dear All,

    While we are upgrading to the latest version we are getting this error:
    Cannot downgrade assignsubmission_mahara from 20140412000 to 2014082002.

    Any help.

    Thank you,
  • Mahara logo
    Thu, May 28, 2015, 7:43 AM
    It appears that the problem Anis describes, is due to the last release of the Portland U plugin having an erroneous extra "0" on the end of its version number. The workaround is to directly update the stored version number in your database.

    update mdl_config_plugins set value='2014041200' where plugin='assignsubmission_mahara' and name='version' and value='20140412000';

    There is a bug tracker report about this issue here:
  • Picture of Remy Olasoji
    Wed, Oct 7, 2015, 6:38 PM
    Dear all,

    Thanks for these plugin which I believe I installed successfully today. As directed, I subscribed to "Assign Submission Mahara services" on our peer record's Services tab. However, when I tried to add an assignment activity to a course, there was no option for Mahara as a submission type.

    Have I missed a step?

  • Picture of Remy Olasoji
    Wed, Oct 7, 2015, 6:40 PM
    By the way, we've got Moodle 2.7.7 and Mahara 15.04 installed so I've downloaded and installed assignfeedback_mahara_moodle27_2014051200 & assignsubmission_mahara_moodle27_2014110502 plugins.
  • Picture of Remy Olasoji
    Wed, Oct 7, 2015, 10:20 PM

    UPDATE: Please ignore the above two comments. The option is now showing - cache problem I guess.
    My apologies.

  • Picture of Anis Jradah
    Wed, Nov 4, 2015, 8:46 PM
    Dear All,

    Kindly advise if this plug-in works well with Moodle 2.9

    Thank you for your help.

    Best regards,
  • Mahara logo
    Fri, Nov 6, 2015, 1:32 PM
    Hi Anis,

    I haven't tested it in Moodle 2.9 yet, so I can't say for sure. But at a quick glance it looks like there aren't any major API differences for mod/assign between 2.8 and 2.9, so the Moodle 2.8 version will probably work in Moodle 2.9.

  • Mahara logo
    Mon, Nov 9, 2015, 2:43 PM
    Update: It has been verified that the plugin works in Moodle 2.9.
1 2
Please login to post comments