Note: You are currently viewing documentation for Moodle 2.4. Up-to-date documentation for the latest stable version of Moodle may be available here: Ajax marking block.

Ajax marking block

From MoodleDocs

The AJAX marking block allows you to view and grade all of your marking without leaving the page you are on. It displays all the ungraded work you need to mark in a tree structure of all of the courses you teach in, along with a count of how many items there are for each course & assessment item. Clicking an item gives you a grading popup, and once you're done, the tree updates itself so you can keep track of what's left.

Ajax marking.png

Prioritise your marking whatever way suits you

Mark all work for a particular class

The block has been built with workflow in mind. If you have a class coming up and need to get their marking done, whatever it is, use the cohorts tab to see all their work across courses. If you are not using cohorts, set the course or activity you are interested in to 'show groups nodes' by either using the config tab, or right-clicking the item where you see it. This will break down the work into separate nodes for each group and you can mark just those.

Mark the most urgent work first

Each course, activity, group, etc has a count of the unmarked work attached. This is broken down into three numbers: recent (within the last 4 days), medium (4-10 days) and overdue (> 10 days). You can quickly see where the oldest pieces of work are and attend to those first. Marking should never take longer than 2 weeks in order to maintain it's relevance, so now you can make sure you never miss any at all.

Mark quizzes faster by doing all answers to one question in rapid succession

The block breaks down quizzes into separate questions before showing you all the students' answers, so you can run through all answers to a particular question quickly, keeping your mind focused on the same thing.

Mark only the things you need to, and hide the rest

The block provides setting via the config tab and a right-click context menu. The trees update immediately when any changes are made, so you can see what's going on.

Only show work for activities you actually have to mark

Sometimes there is work waiting to be graded on an activity that you are not supposed to do anything about e.g. work submitted to practice courses, courses with different topic taught by different people, etc. You can hide these activities by either finding them in the config tab and clicking the show/hide icon, or right-clicking the item in the main courses tree. If you do this for course, it will set all the items in that course to inherit that setting. You can then optionally override the course default for individual activities, but hanging the course level setting will wipe all those overrides out again.

Only show work for your own teaching groups

Sometimes, several groups are doing an activity, but you only teach some of them e.g. if the same Moodle course activities and resources are shared across multiple teachers and classes. In this case, you can set individual groups to be either visible or hidden for that activity, either by using the config tab, or by right-clicking in the courses tree as for the show/hide settings. Defaults are set at course level with activity level overrides in the same way as for show/hide. If you have your groups set to 'separate groups', then you will automatically only see work from student in groups you are a member of, as mentioned above.


Get the files into the blocks/jax_marking diretory, then go to the notifications screen (Front page -> administration block -> notifications) where you should see a message about the tables having been set up correctly.

How to get the files:

Zip file

Download the right zip file here. Copy it to your /blocks/ folder and unzip it there.


The gihub repository is here. Use the following command to get the latest version onto your system:

 cd /path/to/your/moodle/blocks
 git clone ajax_marking
 cd ajax_marking
 git checkout MOODLE_22_STABLE


If you can't see the work you think you ought to, there are a few reasons for this. Try the following:

  • You are an admin and the courses you are looking at have work, but you are not enrolled as a teacher in them. This is to prevent site admins from seeing thousands upon thousands of items unnecessarily. Adding yourself as a teacher in a category will work for the courses within it, but not at site level.
  • You have your course or activity set to 'separate groups' and you are not in the same groups as the students whose work you can't see. Many people use this technique to hide classes from teachers who don't teach them, so I've set the block up to respect this. Join all the groups in the course and you should be fine.
  • You have used the AJAX Marking Block's configuration tab to set some items to 'hide' or set some groups to 'hide'. To reset the settings, you can either run an SQL query like this: DELETE FROM mdl_block_ajax_marking where userid = <youruserid> or, you can check the config tab and set all the course level things to hide and back again. This will work because changing the course level settings destroys all the overrides at activity level. Don't forget to do the same with any groups.
  • The work you are looking for is from a module that is not supported (yet). The list is below: I am aiming to support any and all modules once I have finished the core block features that I have in mind. Hopefully, by the start of June 2012, this will be done and all modules that can be marked will appear.

Supported types

  • Assignment
  • Forum (only if ratings are on)
  • Workshop
  • Quiz (essay questions only)

See also

Development:AJAX marking block