/** * Given an institution entity it reurns the course count * for that institution * @param Institution $ins */ public function getCourseCountByInstitution(Institution $ins) { $courses = $ins->getCourses(); $courseCount = 0; foreach ($courses as $course) { if ($course->getStatus() < 100) { $courseCount++; } } return $courseCount; }
public function getAverageRatingForInstitution(Institution $ins) { $numCourses = 0; $numRatings = 0; $avgRatingSum = 0; $rating = 0; foreach ($ins->getCourses() as $course) { if ($course->getStatus() == CourseStatus::AVAILABLE) { $numCourses++; $courseRatings = $this->calculateAverageRating($course->getId()); $numRatings += $courseRatings['numRatings']; $avgRatingSum += $courseRatings['rating']; } } if ($numCourses > 0) { $rating = $avgRatingSum / $numCourses; } return array('rating' => $rating, 'numRatings' => $numRatings); }