from .models import ClientProfile


def portal_context(request):
    context = {}
    if request.user.is_authenticated and hasattr(request.user, 'client_profile'):
        try:
            profile = request.user.client_profile
            project = profile.active_project
            context['portal_unread_notifications'] = request.user.system_notifications.filter(is_read=False).count()
            context['portal_recent_notifications'] = request.user.system_notifications.order_by('-created_at')[:6]
            if project:
                context['nav_pending_docs'] = project.pending_documents_count
                context['nav_missing_assets'] = project.missing_assets_count
        except ClientProfile.DoesNotExist:
            pass
    return context
