Example #1
0
/**
* Meant to calc year status (**Not to be confused with year completed**)
* Year completed = all credits offered that year is complete
* Year status = defined by this page http://carleton.ca/engineering-design/current-students/undergrad-academic-support/status-vs-standing/
* NOTE: CCDP2100 + science electives + complementary electives do not count for calculating year status
*/
function getYearStatus($courses_completed, $degree)
{
    $yearstatus = 1;
    //Credits completed in each year of degree. 0 => Year 1, 1 => Year 2, 3 => Year 3, 4 => Year 4
    $creditsCompleted[0] = 0.0;
    $creditsCompleted[1] = 0.0;
    $creditsCompleted[2] = 0.0;
    $creditsCompleted[3] = 0.0;
    // Total available credits each year of degree
    // **CCDP2100, science electives, and complementary electives don't count!
    $totalCredits[0] = 0.0;
    $totalCredits[1] = 0.0;
    $totalCredits[2] = 0.0;
    $totalCredits[3] = 0.0;
    $db = new Database("sysc4504");
    $result = $db->getDegreeCourses($degree);
    foreach ($result as $row) {
        if ($row['course_year_status_weight'] == 1) {
            if (in_array($row['course_name'], $courses_completed)) {
                $creditsCompleted[$row['course_year'] - 1] += 0.5;
            }
            $totalCredits[$row['course_year'] - 1] += 0.5;
        }
    }
    $yearstatus = 1;
    if (!isSecondYearStatus($creditsCompleted, $totalCredits)) {
        return $yearstatus;
    }
    $yearstatus = 2;
    if (!isThirdYearStatus($creditsCompleted, $totalCredits)) {
        return $yearstatus;
    }
    $yearstatus = 3;
    if (!isForthYearStatus($creditsCompleted, $totalCredits)) {
        return $yearstatus;
    }
    $yearstatus = 4;
    return $yearstatus;
}