Exemple #1
0
def upload_instructors(teacher: dict):

    Mon = dbtools.minute_range(teacher["Monday"])
    Tue = dbtools.minute_range(teacher["Tuesday"])
    Wed = dbtools.minute_range(teacher["Wednesday"])
    Thurs = dbtools.minute_range(teacher["Thursday"])
    Fri = dbtools.minute_range(teacher["Friday"])

    Schedule = defaultdict(list)

    if Mon != None:
        Schedule[1].append(Mon)
    if Tue != None:
        Schedule[2].append(Tue)
    if Wed != None:
        Schedule[3].append(Wed)
    if Thurs != None:
        Schedule[4].append(Thurs)
    if Fri != None:
        Schedule[5].append(Fri)

    teacher_info = {
        "Name": teacher["Name"],
        "Gender": teacher["Gender"],
        "Ethnicity": teacher["Ethnicity"],
        "Region": teacher["Region"],
        "University": teacher["University"],
        "Year": teacher["Year"],
        "PreviousMentor": teacher["PreviousMentor"],
        "Car": teacher["Car"],
        "Languages": teacher["Languages"],
        "ShirtSize": teacher["ShirtSize"],
        "MultipleDays": teacher["MultipleDays"],
        "Schedule": Schedule
    }

    db = dfsapi.get_db()

    for p in teacher['Program']:
        if teacher['New']:
            latest = str(calendar.timegm(time.gmtime()))
            db.child(p).child("instructors").child(latest).child(
                teacher_info['Name']).set(teacher_info)
        else:
            timestamps = db.child(p).child("instructors").shallow().get()
            if timestamps.val() != None:
                latest = max(timestamps.val())
                db.child(p).child("instructors").child(latest).child(
                    teacher_info['Name']).set(teacher_info)

        db.child("instructors").child(teacher_info['Name']).set(teacher_info)

    for p in teacher['Program']:
        keys = db.child(p).child("instructors").shallow().get()
        if keys.val() != None:
            db_length = len(keys.val())
            if db_length > 10:
                oldest = min(keys.val())
                db.child(p).child("instructors").child(oldest).remove()
    return
Exemple #2
0
def upload_institutions(school: dict):
    db = dfsapi.get_db()

    Mon = dbtools.minute_range(school["Monday"])
    Tue = dbtools.minute_range(school["Tuesday"])
    Wed = dbtools.minute_range(school["Wednesday"])
    Thurs = dbtools.minute_range(school["Thursday"])
    Fri = dbtools.minute_range(school["Friday"])

    Schedule = defaultdict(list)

    if Mon != None:
        Schedule[1].append(Mon)
    if Tue != None:
        Schedule[2].append(Tue)
    if Wed != None:
        Schedule[3].append(Wed)
    if Thurs != None:
        Schedule[4].append(Thurs)
    if Fri != None:
        Schedule[5].append(Fri)

    school_info = {
        "Name": school["Name"],
        "Address": school["Address"],
        "County": school["County"],
        "Instructors": school["Instructors"],
        "Schedule": Schedule
    }

    for p in school['Program']:
        if school['New']:
            latest = str(calendar.timegm(time.gmtime()))
            db.child(p).child("institutions").child(latest).child(
                school_info['Name']).set(school_info)
        else:
            timestamps = db.child(p).child("institutions").shallow().get()
            if timestamps.val() != None:
                latest = max(timestamps.val())
                db.child(p).child("institutions").child(latest).child(
                    school_info['Name']).set(school_info)
    db.child("institutions").child(school_info['Name']).set(school_info)

    for p in school['Program']:
        keys = db.child(p).child("institutions").shallow().get()
        if keys.val() != None:
            db_length = len(keys.val())
            if db_length > 10:
                oldest = min(keys.val())
                db.child(p).child("institutions").child(oldest).remove()
Exemple #3
0
def read_instructors(program: str):
    db = dfsapi.get_db()

    instructors = list()

    keys = db.child(program).child("instructors").shallow().get()
    recentdb = max(keys.val())

    data = db.child(program).child("instructors").child(recentdb).get()

    for i in data.each():
        instructor = i.val()

        Name = instructor["Name"]
        Gender = instructor["Gender"]
        Ethnicity = instructor["Ethnicity"]
        Region = instructor["Region"]
        University = instructor["University"]
        Year = instructor["Year"]
        PreviousMentor = instructor["PreviousMentor"]
        Car = instructor["Car"]
        Languages = instructor["Languages"]
        ShirtSize = instructor["ShirtSize"]
        MultipleDays = instructor["MultipleDays"]
        Mon = dbtools.minute_range(instructor["Monday"])
        Tue = dbtools.minute_range(instructor["Tuesday"])
        Wed = dbtools.minute_range(instructor["Wednesday"])
        Thurs = dbtools.minute_range(instructor["Thursday"])
        Fri = dbtools.minute_range(instructor["Friday"])

        Schedule = defaultdict(list)

        if Mon != None:
            Schedule[1].append(Mon)
        if Tue != None:
            Schedule[2].append(Tue)
        if Wed != None:
            Schedule[3].append(Wed)
        if Thurs != None:
            Schedule[4].append(Thurs)
        if Fri != None:
            Schedule[5].append(Fri)

        instructors.append(
            Instructor(Name, Gender, Ethnicity, Region, University, Year,
                       PreviousMentor, Schedule, Car, Languages, ShirtSize,
                       MultipleDays))

    return instructors
Exemple #4
0
def read_institutions(program: str):
    db = dfsapi.get_db()

    institutions = list()

    keys = db.child(program).child("institutions").shallow().get()
    recentdb = max(keys.val())

    data = db.child(program).child("institutions").child(recentdb).get()

    for i in data.each():
        institution = i.val()

        Name = institution["Name"]
        Address = institution["Address"]
        County = institution["County"]
        Program = institution["Program"]
        Instructors = institution["Instructors"]

        Mon = dbtools.minute_range(institution["Monday"])
        Tue = dbtools.minute_range(institution["Tuesday"])
        Wed = dbtools.minute_range(institution["Wednesday"])
        Thurs = dbtools.minute_range(institution["Thursday"])
        Fri = dbtools.minute_range(institution["Friday"])

        Schedule = defaultdict(list)

        if Mon != None:
            Schedule[1].append(Mon)
        if Tue != None:
            Schedule[2].append(Tue)
        if Wed != None:
            Schedule[3].append(Wed)
        if Thurs != None:
            Schedule[4].append(Thurs)
        if Fri != None:
            Schedule[5].append(Fri)

        institutions.append(
            Institution(Name, Address, County, Program, Instructors, Schedule))

    return institutions