Skip to content

Commit

Permalink
Only social apps that have providers installed
Browse files Browse the repository at this point in the history
  • Loading branch information
sliob committed Nov 4, 2016
1 parent 448d802 commit 5cbdfac
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 9 deletions.
12 changes: 4 additions & 8 deletions geokey/users/templatetags/social.py
@@ -1,7 +1,6 @@
"""Template tags for social features."""

from django import template
from django.db.models import Q

from allauth.socialaccount import providers
from allauth.socialaccount.models import SocialApp
Expand All @@ -13,14 +12,11 @@
@register.assignment_tag
def get_social_apps():
"""Get all enabled social apps."""
social_apps = SocialApp.objects.exclude(Q(client_id__exact='')).distinct()
social_apps = SocialApp.objects.filter(
provider__in=[id for id, name in providers.registry.as_choices()]
).exclude(client_id__exact='').distinct()

for social_app in social_apps:
try:
provider = providers.registry.by_id(social_app.provider)
except:
provider = None

social_app.provider = provider
social_app.provider = providers.registry.by_id(social_app.provider)

return social_apps
6 changes: 5 additions & 1 deletion geokey/users/views.py
Expand Up @@ -13,6 +13,7 @@
from braces.views import LoginRequiredMixin

from allauth.account.models import EmailAddress
from allauth.socialaccount.providers import registry
from allauth.socialaccount.adapter import get_adapter
from allauth.socialaccount.models import SocialAccount

Expand Down Expand Up @@ -513,7 +514,10 @@ def get_context_data(self, *args, **kwargs):
dict
"""
return super(UserProfile, self).get_context_data(
accounts=SocialAccount.objects.filter(user=self.request.user),
accounts=SocialAccount.objects.filter(
user=self.request.user,
provider__in=[id for id, name in registry.as_choices()]
),
*args,
**kwargs
)
Expand Down

0 comments on commit 5cbdfac

Please sign in to comment.