Coverage for app/logic/landingPage.py: 97%
29 statements
« prev ^ index » next coverage.py v7.2.5, created at 2023-05-24 14:13 +0000
« prev ^ index » next coverage.py v7.2.5, created at 2023-05-24 14:13 +0000
1import os
2from flask import g
3from app.models.programManager import ProgramManager
4from app.models.program import Program
7def getManagerProgramDict(user):
8 if user.isAdmin or user.isBonnerScholar:
9 programs = Program.select()
10 else:
11 programs = Program.select().where(Program.isBonnerScholars == False)
12 managerRows = list(ProgramManager.select())
13 managerProgramDict = {}
15 for program in programs:
16 managerProgramDict[program] = {"managers": "", "image": os.path.join('static', 'images/logos/celts_symbol.png')}
17 with os.scandir("./app/static/images/landingPage") as it:
18 for entry in it:
19 if entry.name.split('.')[0] == f'{program.programName}':
20 managerProgramDict[program]["image"] = os.path.join('static', f'images/landingPage/{entry.name}')
21 break
22 for row in managerRows:
23 if managerProgramDict[row.program]["managers"] == "":
24 managerProgramDict[row.program]["managers"] = f'{row.user.firstName} {row.user.lastName}'
25 else:
26 managerProgramDict[row.program]["managers"] = f'{managerProgramDict[row.program]["managers"]}, {row.user.firstName} {row.user.lastName}'
27 return managerProgramDict
29def getActiveEventTab(programID):
30 program = Program.get_by_id(programID)
31 if program.isBonnerScholars:
32 return "bonnerScholarsEvents"
33 elif program.isStudentLed:
34 return "studentLedEvents"
35 else:
36 return "otherEvents"