diff --git a/projects/models.py b/projects/models.py index 0afe493..164376b 100644 --- a/projects/models.py +++ b/projects/models.py @@ -8,7 +8,7 @@ from bugsink.app_settings import get_settings from compat.dsn import build_dsn -from teams.models import TeamMembership, TeamRole +from teams.models import TeamMembership class ProjectRole(models.IntegerChoices): @@ -104,9 +104,8 @@ class Project(models.Model): if user is not None: # take the user's team membership into account try: - tm = TeamMembership.objects.get(team=self.team, user=user) - if tm.role == TeamRole.ADMIN: - return True + TeamMembership.objects.get(team=self.team, user=user) + return True except TeamMembership.DoesNotExist: pass diff --git a/projects/templates/projects/project_list.html b/projects/templates/projects/project_list.html index 361436e..ec0dd98 100644 --- a/projects/templates/projects/project_list.html +++ b/projects/templates/projects/project_list.html @@ -137,7 +137,7 @@ {% endif %} {% else %} - {% if project.is_joinable or request.user.is_superuser %} + {% if ownership_filter == "teams" or project.is_joinable or request.user.is_superuser %}{# ownership_filter check: you can always join your own team's projects, so if you're looking at a list of them... #}