in backend/services/messaging/message_service.py [0:0]
def _get_managers(message: str, project_id: int) -> List[str]:
parser = re.compile(r"((?<=#)\w+|\[.+?\])")
parsed = parser.findall(message)
project = None
if "author" in parsed or "managers" in parsed:
project = Project.query.get(project_id)
if project is None:
return []
project_managers = [project.author.username]
if "managers" not in parsed:
return project_managers
teams = [t for t in project.teams if t.role == TeamRoles.PROJECT_MANAGER.value]
team_members = [
[u.member.username for u in t.team.members if u.active is True]
for t in teams
]
team_members = [item for sublist in team_members for item in sublist]
project_managers.extend(team_members)
return project_managers