コード例 #1
0
ファイル: grade.php プロジェクト: JackCanada/moodle-hacks
     } else {
         if (!$old_grade_grade->locked and !$old_grade_grade->locktime and (!has_capability('moodle/grade:manage', $context) and !has_capability('moodle/grade:lock', $context))) {
             //ignore data
         } else {
             $grade_grade->set_locktime($data->locktime);
             //set_lock may reset locktime
             $grade_grade->set_locked($data->locked, false, true);
             // reload grade in case it was regraded from activity
             $grade_grade = new grade_grade(array('userid' => $data->userid, 'itemid' => $grade_item->id), true);
             $grade_grade->grade_item =& $grade_item;
             // no db fetching
         }
     }
 }
 if (isset($data->excluded) and has_capability('moodle/grade:manage', $context)) {
     $grade_grade->set_excluded($data->excluded);
 }
 // detect cases when we need to do full regrading
 if ($old_grade_grade->excluded != $grade_grade->excluded) {
     $parent = $grade_item->get_parent_category();
     $parent->force_regrading();
 } else {
     if ($old_grade_grade->overridden != $grade_grade->overridden and empty($grade_grade->overridden)) {
         // only when unoverriding
         $grade_item->force_regrading();
     } else {
         if ($old_grade_grade->locktime != $grade_grade->locktime) {
             $grade_item->force_regrading();
         }
     }
 }