def user_data(request): user = request.user if not user.is_authenticated: if settings.DJANGO_LOGIN: login_url = reverse('standalone_login') else: login_url = provider_login_url(request) return JsonResponse({ 'is_authenticated': False, 'login_url': login_url, }) if settings.DJANGO_LOGIN: logout_url = reverse('standalone_logout') else: logout_url = reverse('account_logout') return JsonResponse({ 'is_authenticated': True, 'is_admin': user.has_perm('base.can_manage_project'), 'id': user.id, 'email': user.email, 'display_name': user.display_name, 'name_or_email': user.name_or_email, 'username': user.username, 'manager_for_locales': list(user.managed_locales.values_list('code', flat=True)), 'translator_for_locales': list(user.translated_locales.values_list('code', flat=True)), 'translator_for_projects': user.translated_projects, 'settings': { 'quality_checks': user.profile.quality_checks, 'force_suggestions': user.profile.force_suggestions, }, 'preferred_locales': user.profile.sorted_locales_codes, 'tour_status': user.profile.tour_status, 'logout_url': logout_url, 'gravatar_url_small': user.gravatar_url(44), 'gravatar_url_big': user.gravatar_url(88), 'notifications': user.serialized_notifications, })
def user_data(request): user = request.user if not user.is_authenticated: if settings.AUTHENTICATION_METHOD == "django": login_url = reverse("standalone_login") else: login_url = provider_login_url(request) return JsonResponse({ "is_authenticated": False, "login_url": login_url }) if settings.AUTHENTICATION_METHOD == "django": logout_url = reverse("standalone_logout") else: logout_url = reverse("account_logout") return JsonResponse({ "is_authenticated": True, "is_admin": user.has_perm("base.can_manage_project"), "id": user.id, "email": user.email, "display_name": user.display_name, "name_or_email": user.name_or_email, "username": user.username, "manager_for_locales": list(user.managed_locales.values_list("code", flat=True)), "translator_for_locales": list(user.translated_locales.values_list("code", flat=True)), "translator_for_projects": user.translated_projects, "settings": { "quality_checks": user.profile.quality_checks, "force_suggestions": user.profile.force_suggestions, }, "tour_status": user.profile.tour_status, "has_dismissed_addon_promotion": user.profile.has_dismissed_addon_promotion, "logout_url": logout_url, "gravatar_url_small": user.gravatar_url(88), "gravatar_url_big": user.gravatar_url(176), "notifications": user.serialized_notifications, })
def user_data(request): user = request.user if not user.is_authenticated: if settings.DJANGO_LOGIN: login_url = reverse('standalone_login') else: login_url = provider_login_url(request) return JsonResponse({ 'is_authenticated': False, 'login_url': login_url, }) if settings.DJANGO_LOGIN: logout_url = reverse('standalone_logout') else: logout_url = reverse('account_logout') return JsonResponse({ 'is_authenticated': True, 'is_admin': user.has_perm('base.can_manage_project'), 'id': user.id, 'email': user.email, 'display_name': user.display_name, 'name_or_email': user.name_or_email, 'username': user.username, 'manager_for_locales': list( user.managed_locales.values_list('code', flat=True) ), 'translator_for_locales': list( user.translated_locales.values_list('code', flat=True) ), 'translator_for_projects': user.translated_projects, 'settings': { 'quality_checks': user.profile.quality_checks, 'force_suggestions': user.profile.force_suggestions, }, 'preferred_locales': user.profile.sorted_locales_codes, 'logout_url': logout_url, 'gravatar_url_small': user.gravatar_url(44), 'gravatar_url_big': user.gravatar_url(88), 'notifications': user.serialized_notifications, })