File tree Expand file tree Collapse file tree 1 file changed +30
-1
lines changed
Expand file tree Collapse file tree 1 file changed +30
-1
lines changed Original file line number Diff line number Diff line change @@ -62,7 +62,36 @@ def termsInTotal(username):
6262 break
6363 return totalTerms
6464
65-
65+ def termsInTotal (username ):
66+ """
67+ Returns a list of Fall + Spring semesters a student has attended, like ["Fall 2023", "Spring 2024"]
68+ """
69+ user = User .select ().where (User .username == username ).get ()
70+ currentTerm = g .current_term
71+ studentStanding = user .rawClassLevel
72+ currentTermIsFall = currentTerm .description .startswith ("Fall" )
73+ fallAndSpringTerms = []
74+
75+ classLevelToYears = {"Freshman" : 1 , "Sophomore" : 2 , "Junior" : 3 , "Senior" : 4 }
76+ yearsCompleted = classLevelToYears .get (studentStanding )
77+
78+ if currentTerm .isSummer or currentTermIsFall :
79+ studentStartYear = currentTerm .year - yearsCompleted + 1
80+ totalTermsList = (yearsCompleted ) * 2 - 1
81+ else : # Spring
82+ studentStartYear = currentTerm .year - yearsCompleted
83+ totalTermsList = (yearsCompleted ) * 2
84+
85+ for i in range (totalTermsList ):
86+ if i % 2 == 0 : # Fall
87+ semester = "Fall"
88+ year = studentStartYear + i // 2
89+ else : # Spring
90+ semester = "Spring"
91+ year = studentStartYear + i // 2 + 1
92+ fallAndSpringTerms .append (f"{ semester } { year } " )
93+
94+ return fallAndSpringTerms
6695
6796def getCertRequirementsWithCompletion (* , certification , username ):
6897 """
You can’t perform that action at this time.
0 commit comments