[Modules] Ability to re-fresh mastery path calculation for selected users in a course

Problem statement:

When I add conditional content into a Mastery Path inside a course, this content will not show up for users that have already completed (unlocked) the mastery path. Whilst I *can* manually add a single user to the added assignment, this quickly becomes impossible when you have to add *many* users to *many* added pages/assignments in *many* mastery paths. I *could* export the gradebook, slightly adjust all scores (i.e. add 1%) and reimport, and then import the original scores back onto the course. The slight score changes would force each mastery path to be re-calculated. However, this process is very prone to error and becomes very complicated if you have mastery paths within mastery paths. (you are obliged to export-import gradebook multiple times to affect the multiple layers of the mastery paths.

Proposed solution:

As an Admin I have the ability to click a button that will re-calculate the mastery paths inside a course. A likely location for this feature is inside Modules > View Progress, or on the "mastery paths" links in the Modules view.

  1. I add a new item into a mastery path of a module (it is assigned to "Mastery path" instead of "Everyone")
  2. I click on Mastery paths link 
  3. I add the new item to the appropriate path
  4. I tick a "Recalculate mastery paths" box
  5. I click on Save This will save my new mastery path config and triggers a job that recalculates the mastery path. For users that have not yet unlocked the path there is no change. For users that have unlocked the path already, the new item becomes visible to those that are seeing the modified path (i.e. got above 70%)
User role(s):

admin