def handle(self, *args, **options):
        try:
            site = Site.objects.get(id=settings.SITE_ID)
        except Site.DoesNotExist:
            self.stderr.write('No primary domain configured. Please run: '
                              'python manage.py devilry_setup_primary_domain')
            raise SystemExit()

        client_id = options['client_id']
        secret = getpass('Please type your Dataporten OAuth Client Secret: ')
        if not secret:
            self.stderr.write('Secret is required')
            raise SystemExit()
        try:
            socialapp = SocialApp.objects.get(provider=DevilryDataportenProvider.id)
        except SocialApp.DoesNotExist:
            socialapp = SocialApp(provider=DevilryDataportenProvider.id)
        socialapp.name = 'Devilry Dataporten'
        socialapp.client_id = client_id
        socialapp.secret = secret
        socialapp.full_clean()
        socialapp.save()

        if not socialapp.sites.filter(id=settings.SITE_ID).exists():
            socialapp.sites.add(site)

        self.stdout.write('Dataporten provider successfully configured.')
示例#2
0
    def handle(self, *args, **options):
        try:
            site = Site.objects.get(id=settings.SITE_ID)
        except Site.DoesNotExist:
            self.stderr.write('No primary domain configured. Please run: '
                              'python manage.py devilry_setup_primary_domain')
            raise SystemExit()

        client_id = options['client_id']
        secret = getpass('Please type your Dataporten OAuth Client Secret: ')
        if not secret:
            self.stderr.write('Secret is required')
            raise SystemExit()
        try:
            socialapp = SocialApp.objects.get(
                provider=DevilryDataportenProvider.id)
        except SocialApp.DoesNotExist:
            socialapp = SocialApp(provider=DevilryDataportenProvider.id)
        socialapp.name = 'Devilry Dataporten'
        socialapp.client_id = client_id
        socialapp.secret = secret
        socialapp.full_clean()
        socialapp.save()

        if not socialapp.sites.filter(id=settings.SITE_ID).exists():
            socialapp.sites.add(site)

        self.stdout.write('Dataporten provider successfully configured.')
示例#3
0
    def handle(self, *args, **options):
        changed = False
        try:
            app = SocialApp.objects.get(provider=HelsinkiProvider.id)
        except SocialApp.DoesNotExist:
            app = SocialApp(provider=HelsinkiProvider.id)
            self.stdout.write(self.style.SUCCESS('Creating new SocialApp'))

        if not app.name:
            app.name = 'Helsingin kaupungin työntekijät'
            changed = True

        client_id = secret_key = None

        jwt_settings = getattr(settings, 'JWT_AUTH')
        if jwt_settings:
            client_id = jwt_settings.get('JWT_AUDIENCE')
            secret_key = jwt_settings.get('JWT_SECRET_KEY')

        if not client_id:
            raise ImproperlyConfigured(
                "You must set JWT_AUTH['JWT_AUDIENCE'] to correspond to your client ID"
            )
        if not secret_key:
            raise ImproperlyConfigured(
                "You must set JWT_AUTH['JWT_SECRET_KEY'] to correspond to your secret key"
            )

        if app.client_id != client_id:
            changed = True
            app.client_id = client_id
        if app.secret != secret_key:
            changed = True
            app.secret = secret_key
        if changed:
            app.save()

        if not app.sites.exists():
            from django.contrib.sites.models import Site

            app.sites.add(Site.objects.get(id=settings.SITE_ID))
            changed = True

        if changed:
            self.stdout.write(
                self.style.SUCCESS('SocialApp successfully updated'))
        else:
            self.stdout.write(
                self.style.NOTICE('Already synced -- no changes needed'))
    def handle(self, *args, **options):
        changed = False
        try:
            app = SocialApp.objects.get(provider=HelsinkiProvider.id)
        except SocialApp.DoesNotExist:
            app = SocialApp(provider=HelsinkiProvider.id)
            self.stdout.write(self.style.SUCCESS('Creating new SocialApp'))

        if not app.name:
            app.name = 'Helsingin kaupungin työntekijät'
            changed = True

        client_id = secret_key = None

        jwt_settings = getattr(settings, 'JWT_AUTH')
        if jwt_settings:
            client_id = jwt_settings.get('JWT_AUDIENCE')
            secret_key = jwt_settings.get('JWT_SECRET_KEY')

        if not client_id:
            raise ImproperlyConfigured("You must set JWT_AUTH['JWT_AUDIENCE'] to correspond to your client ID")
        if not secret_key:
            raise ImproperlyConfigured("You must set JWT_AUTH['JWT_SECRET_KEY'] to correspond to your secret key")

        if app.client_id != client_id:
            changed = True
            app.client_id = client_id
        if app.secret != secret_key:
            changed = True
            app.secret = secret_key
        if changed:
            app.save()

        if not app.sites.exists():
            from django.contrib.sites.models import Site

            app.sites.add(Site.objects.get(id=settings.SITE_ID))
            changed = True

        if changed:
            self.stdout.write(self.style.SUCCESS('SocialApp successfully updated'))
        else:
            self.stdout.write(self.style.NOTICE('Already synced -- no changes needed'))
示例#5
0
from django.contrib.sites.models import Site
from allauth.socialaccount.models import SocialApp
import os

# More about the following here: https://wsvincent.com/django-allauth-tutorial/
first_site = Site.objects.get(pk=1)
first_site.name = os.environ['TWITTER_HOST']
first_site.domain = os.environ['TWITTER_HOST']
first_site.save()

# More about the following here: https://django-allauth.readthedocs.io/en/latest/providers.html
social_app = SocialApp.objects.filter(provider='twitter')
if not social_app:
    social_app = SocialApp()
else:
    social_app = social_app[0]
social_app.provider = 'twitter'
social_app.name = 'Twitter'
social_app.client_id = os.environ['TWITTER_CONSUMER_KEY']
social_app.secret = os.environ['TWITTER_CONSUMER_SECRET']
social_app.save()

social_app.sites.add(first_site)
示例#6
0
# users 2-9 are service providers
# admin is staff and superuser
# pass is admin

# default site, for password reset
site = Site.objects.all()[0]
name = settings.PRODUCTION_URL.split('//')[1]
site.domain = name
site.name = name
site.save()

from allauth.socialaccount.models import SocialApp

fb = SocialApp()
fb.provider = "facebook"
fb.name = "Facebook"
fb.client_id = "207371922661306"
fb.key = ''
fb.secret = "67e595cb85d9836c305fe4b9985180df"
fb.save()

g = SocialApp()
g.provider = "google"
g.name = "Google"
g.client_id = "236816371004-c46h64qimvsqffbrdt8k5o5hq90iigjh.apps.googleusercontent.com"
g.key = ''
g.secret = "n6NuvZ1_jAqKq_r6V6pWQ8Ii"
g.save()

for app in SocialApp.objects.all():
    app.sites.add(site)
示例#7
0
# users 2-9 are service providers
# admin is staff and superuser
# pass is admin

# default site, for password reset
site = Site.objects.all()[0]
name = settings.PRODUCTION_URL.split('//')[1]
site.domain = name
site.name = name
site.save()

from allauth.socialaccount.models import SocialApp

fb = SocialApp()
fb.provider = "facebook"
fb.name = "Facebook"
fb.client_id = "207371922661306"
fb.key = ''
fb.secret = "67e595cb85d9836c305fe4b9985180df"
fb.save()

g = SocialApp()
g.provider = "google"
g.name = "Google"
g.client_id = "236816371004-c46h64qimvsqffbrdt8k5o5hq90iigjh.apps.googleusercontent.com"
g.key = ''
g.secret = "n6NuvZ1_jAqKq_r6V6pWQ8Ii"
g.save()

for app in SocialApp.objects.all():
    app.sites.add(site)