Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-43250

get_graders() matches potential graders from all groups

    XMLWordPrintable

Details

    • MOODLE_24_STABLE, MOODLE_25_STABLE, MOODLE_26_STABLE
    • MOODLE_24_STABLE, MOODLE_25_STABLE, MOODLE_26_STABLE
    • MDL-43250-master
    • Hide

      25+

      1. Run unit tests.

      On 24 only (no tests there)

      1. create 2 groups in a course
      2. Add a teacher and a student to the first group
      3. Add a different teacher and the same student to the second group
      4. Create a grouping
      5. Add the first group to the grouping
      6. Create an assignment with groupmode = separate groups, and grouping set to this new grouping
      7. Add an assignment submission as the student
      8. Verify that the first teacher was notified - but the second one was not.
      Show
      25+ Run unit tests. On 24 only (no tests there) create 2 groups in a course Add a teacher and a student to the first group Add a different teacher and the same student to the second group Create a grouping Add the first group to the grouping Create an assignment with groupmode = separate groups, and grouping set to this new grouping Add an assignment submission as the student Verify that the first teacher was notified - but the second one was not.
    • 3
    • FRONTEND Sprint 7

    Description

      We have come to belief that the function that determines who should recieve a notification to grade a submission (/mod/assign/locallib.php:get_graders())is too broad.

      When using an activity in SEPARATE groups mode the function currently identifies potential graders as users who hold the grader capability and are in ANY group with the submitter in the course.

      We believe that this may be an issue.

      We have spent a while talking about this and feel that the groups_get_all_groups() function should also pass the activity's groupingid value so that, if a grouping has been selected, the potential graders are restricted to users within the activity's grouping.

      This should be a case of simply changing the line to

      if ($groups = groups_get_allgroups($this->get_course()->id, $userid, $this->get_course_module()->groupingid) {
      

      Like I said we have spent a while talking about this and we can't see the reason why this works the way it does, so we would also welcome someone explaining why it is the way it is!

      Attachments

        Issue Links

          Activity

            People

              damyon Damyon Wiese
              mhughes2k Michael Hughes
              Andrew Davis Andrew Davis
              Sam Hemelryk Sam Hemelryk
              Sam Hemelryk Sam Hemelryk
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                13/Jan/14