Introduce workspace tenancy boundaries

This commit is contained in:
rucki
2026-09-09 17:46:10 +02:00
parent 7f203a7117
commit 291c8db471
11 changed files with 565 additions and 118 deletions
+16 -1
View File
@@ -1,7 +1,22 @@
from django.urls import reverse
from django.utils.translation import gettext as _
from .models import UserPreference
from .models import UserPreference, WorkspaceMembership, get_or_create_personal_workspace
def active_workspace_navigation(request):
if not request.user.is_authenticated:
return {'active_workspace': None, 'workspace_memberships': []}
workspace = get_or_create_personal_workspace(request.user)
workspace_id = request.session.get('workspace_id')
if workspace_id:
membership = WorkspaceMembership.objects.select_related('workspace').filter(user=request.user, workspace_id=workspace_id).first()
if membership:
workspace = membership.workspace
return {
'active_workspace': workspace,
'workspace_memberships': WorkspaceMembership.objects.filter(user=request.user).select_related('workspace').order_by('workspace__name'),
}
def overview_navigation(request):