Progress Bar

Blocks ::: block_progress
Maintained by My mugMichael de Raadt
A time management tool for you and your students
Latest release:
4289 sites
187 fans
Current versions available: 2

Please use the Completion Progress block instead if this.

  • Faster and more efficient
  • Easier to use
  • More compatible with additional plugins

The Progress Bar block will no longer be developed and is kept here for historical reasons.

  • A time-management tool for students
    • Shows progress in activities/resources of a course
    • Colour coded to quickly see completed/viewed
  • Teachers select which pre-existing activities/resources are to be included
  • Order by times/deadlines or course order
  • Overview page for teachers showing progress of all students
    • Identify and contact at-risk students
  • Combined progress on Dashboard page


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


My mug
Michael de Raadt (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS


  • My mug
    Wed, May 16, 2012, 9:56 AM
    Hi, Jared.

    Could you create an issue in tracker and I'll add that to the list? If you can help with looking at the tables for Workshop to determine the appropriate queries, that would help also.
  • Thu, May 17, 2012, 3:53 PM
    Hi Michael

    Thanks for this great block. It works of what it says. I'm in a tricky situation, I've courses with plenty of activities that have no expiry dates. When a monitor an activity by choosing Yes from the drop down, I can say an expected date appearing in the Progress Bar. I want to monitor activities but do not want expected date appearing when student hovers the mouse an activity.
  • My mug
    Thu, May 17, 2012, 5:25 PM
    Hi, Sandeep.

    To hide the dates from students you can use the setting to hide the NOW indicator.
  • Grizzly Bear Print with Deer Print
    Tue, May 29, 2012, 4:07 AM
    We loved this block in 1.9 and now see it in action with 2.2 and really do appreciate the view all students screen with their completion percentage!! Wondering aloud, would it be possible to have the student also see that percentage?
  • My mug
    Tue, May 29, 2012, 9:27 AM
    Yes, that would be a pretty easy thing to add. I would probably make it optional in the instance configuration settings. Could you launch an improvement issue for this on
  • Grizzly Bear Print with Deer Print
    Tue, May 29, 2012, 12:19 PM
    Shall do . . . thanks Michael! smile
  • Fri, Jul 13, 2012, 3:37 AM
    Will this work with Moodle 1.9.16?
  • My mug
    Thu, Jul 19, 2012, 2:31 PM
    Hi, Deniz.

    The 1.9 version should work on 1.9.16.
  • Sun, Jul 22, 2012, 3:31 PM
    In "Overview of students" page, is it possible to filter ONLY students?
    Now I see all users of the course (manager, teachers...).

    Thank you very much!!!
  • My mug
    Tue, Jul 24, 2012, 12:45 PM
    Hi, Gino.

    I'm working on controlling roles as part of an issue reported in the Tracker. You might want to watch that issue.
  • My mug
    Tue, Jul 24, 2012, 6:53 PM
    You can now select roles in the Overview page. It defaults to the Student role.
  • Tue, Jul 24, 2012, 8:56 PM
    Thanks for your quickness!! smile
  • Fri, Aug 3, 2012, 2:39 PM
    Is it possible for the progress bar to also see manual gradings? eg: I have a number of students who have been manually graded at 100% (because they had passed a previous version of the quiz) but the progress bar doesn't pick that up.
  • I sell cookies
    Wed, Aug 8, 2012, 1:17 PM
    Hi Michael. I've been working on John's question. The situation is where the user has not touched the particular quiz instance, but the user's grade for that quiz is overridden in the gradebook. In this scenario you'd expect that the progress bar for the quiz::graded and quiz::finished events would show as complete (green). The fix is to change two of the queries in blocks/progress/lib.php::get_monitorable_modules()::~line 305 as follows:

    /* Changed 2012Aug06 to include overridden grades */
    'finished' => "SELECT
    FROM {grade_items} i
    JOIN {grade_grades} g ON ( AND i.itemmodule = 'quiz' AND i.iteminstance = :eventid AND g.userid = :userid)
    LEFT JOIN {quiz_attempts} qa ON (qa.quiz=g.itemid AND qa.userid = g.userid AND qa.timefinish <> 0)",

    /* Changed 2012Aug06 to include overridden grades */
    'graded' => "SELECT g.rawgrade
    FROM {grade_grades} g, {grade_items} i
    WHERE i.itemmodule = 'quiz'
    AND i.iteminstance = :eventid
    AND = g.itemid
    AND g.userid = :userid",

    I'd appreciate any feedback, and thought perhaps you'd consider including something like this in a future release.
  • My mug
    Wed, Aug 8, 2012, 2:58 PM
    Hi, Mark.

    Thanks for working on this problem. Could you please post what you have found to an issue on That would allow me to look at it and work on the solution.
Please login to post comments