Completion Progress

Blocks ::: block_completion_progress
Maintained by Jonathon Fowler
The Completion Progress block is a time-management tool for students.
Latest release:
15291 sites
3k downloads
316 fans
Current versions available: 4

The Completion Progress block is a time-management tool for students.

  • Visual representation of activities to be completed
  • Colour-coded for quick reference
  • Overview for teachers, identify students at risk
  • Combined progress on Dashboard page

The block shows activities with activity completion settings.

Screenshots

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

Contributors

Jonathon Fowler (Lead maintainer): Caretaker
My mug
Michael de Raadt: Original author
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Lars Kristensen
    Fri, 27 Aug 2021, 8:05 PM
    No red colours when order = sorting in course

    Hi there

    We have some open courses, where we set individual assignment deadlines for each student.

    Besides that, we have a lot of activiteres between assignment where we don't set deadlines.(and it would be too much workload if we should set individual dates for these aswell)

    When we set the ordering af "Expected coompletion date" all the assignment are grouped in one end of the progressbar, wich confuses the students.

    In this ordering, assigment turns red when the expected hand is passed (as we want)

    When we change the sorting mode to 'sorting in course' there are no red markings on the assignments where the deadlines are passed.

    I suggest the use of red colours in both sorting modes, so teachers and students can see if assignment is not handed in before deadline.

    Could that be possible?

    Yours
    Lars Kristensen

  • My mug
    Mon, 30 Aug 2021, 6:39 AM
    Hi, Lars.

    Two options...

    Change the ordering so it doesn't use expected completion times. It can follow the order of items in the course, assuming you have ordered appropriately.

    Another option would be to change the colours, which can be done in the global settings for the block.

    Michael
  • Lars Kristensen
    Tue, 31 Aug 2021, 6:13 PM
    @Michael de Raadt

    The problem is , when we use 'sorting in course' the activities doesn't turn red when the due date is passed - they stay blue nomatter what.

    And changing colours globally doesn't affect it.

    Another problem we encountered:

    The 'now' date is controlled by the 'expect completed on' (under Activity completion)

    And not the 'Due Date' under assignment settings.

    We use individual deadlines for each student with the override feature under assignments https://docs.moodle.org/311/en/Using_Assignment#Overriding_assignment_deadlines

    But the individueal deadlines doesn't affect the progressbar

    The students can not see thier own individual deadline in the progressbar.

    /Lars
  • Albana Celepija
    Fri, 3 Sept 2021, 10:53 PM
    Hello,

    I would like to extend the progress class (completion/classes/progress.php) that currently calculates the progress based on the number of completed activities.
    I would like to introduce the concept of duration for each activity and once the activity is done it could calculate the percentage of progress based on that value.
    Example:
    activity1: duration 10 (Done)
    activity2: duration 3 (To be Done)

    Currently, the progress percentage is 50%, instead, it should be 10 / (10+3) =  76% since the duration of the first activity is longer.
    Is there any possibility to extend this feature using a local plugin? How should I name the class and where should I place it inside the plugin folder?
    I have already added a custom field to hold the duration value for each activity and directly modified the progress.php file but I would like to produce a clean solution, by writing a local plugin.

    If you consider this feature as a candidate improvement to be included in the core I would be happy to contribute and to receive suggestions on how to include it.

    Thank you,

    Albana
  • Sali Kaceli
    Wed, 15 Sept 2021, 1:44 AM
    I have a bunch of quizzes that for some reason display with a yellow status 'Not completed (Submitted) and no matter how I change the settings it does not seem to update the status. The Completion Tracking settings are set to: "Student must view the activity to complete it" and "Student must receive a grade to complete this activity". Any idea how to fix this issue so that it shows as completed or what is causing the yellow status.
  • Steve Radford
    Thu, 16 Sept 2021, 5:15 PM
    Is there any way to exclude users with a Suspended course status from being shown the list? (I know that I could create a different role for them and do it that way, but that seems unnecessary when there is already an option to change their status from 'active' to 'suspended')
  • Nguyen Manh
    Sun, 31 Oct 2021, 11:24 AM
    I'm using moodle 4 dev and got an error notification 'Exception - Class 'core_user\fields' not found".
    How can I solve it? Please help me.
  • Pedro A Arias
    Mon, 10 Jan 2022, 8:08 AM
    Hello, it would be interesting if the visualization of the pending forums to be qualified is implemented in the block, since only those that have a qualification with an assigned color appear.
  • Shelby Budd
    Fri, 14 Jan 2022, 4:48 AM
    We love using the progress completion bar for our students. We have our parents login in to an associated account so they can track student progress as well. Is there any way to get that progress bar to show for the parents of an associated student? At present, when the parent's login we can only get the parent progress bar to show - which is not particularly helpful. Getting that student progress to show next to the grade for each student would be AWESOME.
  • My mug
    Fri, 14 Jan 2022, 6:45 AM
    This has been suggested before and I agree that it would be great to show the block to mentors. That would be especially useful for K-12 were the mentor role is used for parents. If someone is not an enrolled student, but is a mentor of a student, it would be good to show the mentee's content. It wouldn't require too much checking to establish the identity of the student and after that, showing that user's progress is the same in code. It might be a bit more complicated on Home/Dashboard.

    I'm not in a position to develop that any more, but hopefully Jono can look into that. Shelby: you might want to write this up in the Moodle Tracker on on the plugin's Git repo.
  • Chris Toselli
    Fri, 14 Jan 2022, 6:59 AM
    Yes. This would be a brilliant addition. This would really help us as well
  • Steyn Grobler
    Tue, 1 Feb 2022, 4:37 PM
    Hi there, my organisation supports various Moodle instances. One of our clients uses Laotian text on courses and is experiencing an exception when attempting to use the completion progress block on such courses. Please see below and advise whether there is a resolution for this issue. Your feedback would be greatly appreciated.

    Error

    Exception - method_exists(): Argument #1 ($object_or_class) must be of type object|string, null given

    Debug info:

    Error code: generalexceptionmessage

    Stack trace:
    line 306 of /blocks/completion_progress/lib.php: TypeError thrown
    line 306 of /blocks/completion_progress/lib.php: call to method_exists()
    line 244 of /blocks/completion_progress/block_completion_progress.php: call to block_completion_progress_get_activities()
    line 341 of /blocks/moodleblock.class.php: call to block_completion_progress->get_content()
    line 235 of /blocks/moodleblock.class.php: call to block_base->formatted_contents()
    line 1181 of /lib/blocklib.php: call to block_base->get_content_for_output()
    line 1239 of /lib/blocklib.php: call to block_manager->create_block_contents()
    line 374 of /lib/blocklib.php: call to block_manager->ensure_content_created()
    line 3980 of /lib/outputrenderers.php: call to block_manager->region_has_content()
    line 40 of /theme/boost/layout/columns2.php: call to core_renderer->blocks()
    line 1396 of /lib/outputrenderers.php: call to include()
    line 1326 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
    line 245 of /course/view.php: call to core_renderer->header()
  • Jonathon Fowler
    Wed, 2 Feb 2022, 6:20 AM
    @Steyn Grobler: What PHP version is being used? I presume PHP 8.x to be getting that error, because <= 7.4 doesn't fail in that way for me. Either way, as a workaround try changing `method_exists($cm->url, 'out')` to `is_a($cm->url, 'moodle_url')` on lib.php:306.
  • Steyn Grobler
    Wed, 2 Feb 2022, 2:48 PM
    Thank you for your prompt feedback, Jonathon. We will attempt the above and let you know.
  • Steyn Grobler
    Wed, 2 Feb 2022, 6:37 PM
    Thank you, Jonathon. The team implemented the adjustment you suggested and the issue has been resolved.
Please login to post comments