Example #1
0
def comp_missing_3315(student, coursehistory, degree):

    # get necessary information
    ccodes = [c.code for c in coursehistory]
    uterms = dpr.unplanned_terms(student, coursehistory)
    unready = ('MATH 3315' not in ccodes and 'MATH 3316' not in ccodes
               and 'CSE 3365' not in ccodes and 'CS 3365' not in ccodes)

    # return appropriate warning
    if uterms <= 1 and unready:
        return dpr.DPRWarning(
            4,
            "missing MATH 3315: Computational specializaion no longer possible."
        )
    if uterms <= 2 and unready:
        return dpr.DPRWarning(
            3,
            "missing MATH 3315: Computational specializaion becoming unlikely."
        )
    if uterms <= 3 and unready:
        return dpr.DPRWarning(
            2, "please change your schedule to be enrolled in MATH 3315.")
    if uterms <= 4 and unready:
        return dpr.DPRWarning(
            1, "make sure to take MATH 3315 as early as possible.")

    return None
Example #2
0
def incomplete_foundation(student, coursehistory, degree):

  # get necessary information
  uterms = dpr.unplanned_terms(student, coursehistory)
  fcomp = degree.grplist[0].satisfied

  # return appropriate warning
  if uterms <= 1 and not fcomp:
    return dpr.DPRWarning(4, "Foundation incomplete with <= 2 semesters remaining.")
  if uterms <= 2 and not fcomp:
    return dpr.DPRWarning(3, "Foundation incomplete with <= 3 semesters remaining.")
  if uterms <= 3 and not fcomp:
    return dpr.DPRWarning(2, "Foundation incomplete with <= 4 semesters remaining.")
  if uterms <= 4 and not fcomp:
    return dpr.DPRWarning(1, "Aim to complete foundation by the end of sophomore year.")
  return None
Example #3
0
def anum_missing_1341(student, coursehistory, degree):

  # get necessary information
  ccodes = [c.code for c in coursehistory]
  uterms = dpr.unplanned_terms(student, coursehistory)
  ready = any([ (a in ccodes) for a in CS ])

  # return appropriate warning
  if uterms <= 1 and not ready:
    return dpr.DPRWarning(4, "missing CS 1340/1341: on-time graduation impossible.")
  if uterms <= 2 and not ready:
    return dpr.DPRWarning(3, "missing CS 1340/1341: on-time graduation becoming unlikely.")
  if uterms <= 3 and not ready:
    return dpr.DPRWarning(2, "you should change your schedule to be enrolled in CS 1340/1341.")
  if uterms <= 4 and not ready:
    return dpr.DPRWarning(1, "it is best to take CS 1340/1341 by the end of Sophomore year.")

  return None
Example #4
0
def pure_missing_3311(student, coursehistory, degree):

  # get necessary information
  ccodes = [c.code for c in coursehistory]
  uterms = dpr.unplanned_terms(student, coursehistory)
  unready = ('MATH 3311' not in ccodes and 'MATH 3308' not in ccodes)

  # return appropriate warning
  if uterms <= 1 and unready:
    return dpr.DPRWarning(4, "missing MATH 3311: Pure specializaion impossible.")
  if uterms <= 2 and unready:
    return dpr.DPRWarning(3, "missing MATH 3311: Pure specializaion very unlikely.")
  if uterms <= 3 and unready:
    return dpr.DPRWarning(2, "you must change your schedule to be enrolled in MATH 3311.")
  if uterms <= 4 and unready:
    return dpr.DPRWarning(1, "make sure to take MATH 3311 as early as possible.")

  return None
Example #5
0
def comp_missing_3315(student, coursehistory, degree):

    # get necessary information
    ccodes = [c.code for c in coursehistory]
    uterms = dpr.unplanned_terms(student, coursehistory)
    unready = ('MATH 3315' not in ccodes and 'MATH 3316' not in ccodes
               and 'CSE 3365' not in ccodes)

    # return appropriate warning
    if unready and uterms < 2:
        return dpr.DPRWarning(
            3, "missing MATH 3315: CSE/EMIS specializaion no longer possible.")
    if unready and uterms < 3:
        return dpr.DPRWarning(
            2, "you need to change your schedule to be enrolled in MATH 3315.")
    if unready and uterms < 4:
        return dpr.DPRWarning(
            1, "make sure to take MATH 3315 by Junior year at the latest.")

    return None
Example #6
0
def comp_missing_1341(student, coursehistory, degree):

    # get necessary information
    ccodes = [c.code for c in coursehistory]
    uterms = dpr.unplanned_terms(student, coursehistory)
    unready = ('CSE 1341' not in ccodes and 'ASIM 1310' not in ccodes
               and 'CRCP' not in ccodes)

    # return appropriate warning
    if unready and uterms < 3:
        return dpr.DPRWarning(
            3, "missing CSE 1341: CSE/EMIS specializaion no longer possible.")
    if unready and uterms < 4:
        return dpr.DPRWarning(
            2, "you need to change your schedule to be enrolled in CSE 1341.")
    if unready and uterms < 5:
        return dpr.DPRWarning(
            1, "it is best to take CSE 1341 by the end of Sophomore year.")

    return None
Example #7
0
def anum_missing_1341(student, coursehistory, degree):

    # get necessary information
    ccodes = [c.code for c in coursehistory]
    uterms = dpr.unplanned_terms(student, coursehistory)
    unready = ('CSE 1341' not in ccodes and 'ASIM 1310' not in ccodes
               and 'CRCP' not in ccodes)

    # return appropriate warning
    if unready and uterms < 2:
        return dpr.DPRWarning(
            4, "missing CSE 1341: will not be able to graduate on time.")
    if unready and uterms < 3:
        return dpr.DPRWarning(
            3, "you won't graduate unless you add CSE 1341 to your schedule.")
    if unready and uterms < 4:
        return dpr.DPRWarning(
            2, "CSE 1341 not taken by the end of Junior year: inadvisable.")
    if unready and uterms < 5:
        return dpr.DPRWarning(
            1, "make sure to take CSE 1341 by the end of Junior year.")

    return None