Example #1
0
 /**
  * @param array $exercise_list
  * @param int $user_id
  * @param int $courseId
  * @param int $session_id
  * @return string
  */
 public static function get_exercise_student_average_best_attempt($exercise_list, $user_id, $courseId, $session_id)
 {
     $result = 0;
     if (!empty($exercise_list)) {
         foreach ($exercise_list as $exercise_data) {
             $exercise_id = $exercise_data['id'];
             $best_attempt = Event::get_best_attempt_exercise_results_per_user($user_id, $exercise_id, $courseId, $session_id);
             if (!empty($best_attempt) && !empty($best_attempt['exe_weighting'])) {
                 $result += $best_attempt['exe_result'] / $best_attempt['exe_weighting'];
             }
         }
         $result = $result / count($exercise_list);
         $result = round($result, 2) * 100;
     }
     return $result . '%';
 }