diff -Naur moodle197a/grade/edit/tree/index.php moodle197b/grade/edit/tree/index.php --- moodle197a/grade/edit/tree/index.php 2009-07-07 12:46:50.000000000 -0500 +++ moodle197b/grade/edit/tree/index.php 2009-12-23 10:42:55.000000000 -0600 @@ -84,6 +84,15 @@ error('Incorrect category id!'); } $data->aggregation = $aggregationtype; + if ($grade_category->aggregation == GRADE_AGGREGATE_WEIGHTED_MEAN AND $aggregationtype <> GRADE_AGGREGATE_WEIGHTED_MEAN) { + // GO THROUGH AND SET THE AGGREGATIONCOEF FOR ALL CHILDREN TO ZERO + $grade_category->children = $grade_category->get_children(); + foreach ( $grade_category->children as $useditem) { + $useditem['object']->grade_item = $useditem['object']->get_grade_item(); + $useditem['object']->grade_item->aggregationcoef = 0; + $useditem['object']->grade_item->update(); + } + } grade_category::set_properties($grade_category, $data); $grade_category->update(); grade_regrade_final_grades($courseid);