Skip to content

Instantly share code, notes, and snippets.

@OndrejIT
Created June 15, 2017 14:58
Show Gist options
  • Save OndrejIT/dbbb39e67887324405ed4a5422c03d9c to your computer and use it in GitHub Desktop.
Save OndrejIT/dbbb39e67887324405ed4a5422c03d9c to your computer and use it in GitHub Desktop.
fbtoken.py
# Author Ondrej Barta
# [email protected]
# Copyright 2017
import facebook
from django.contrib.auth.decorators import login_required
from django.http import HttpResponse, Http404
from django.shortcuts import redirect
from settings import FACEBOOK_APP_SECRET, FACEBOOK_APP_ID, FACEBOOK_REDIRECT_URL
from .models import Client
@login_required
def fb_token(request):
"""
Views pro generování facebook tokenu
"""
if request.method == "GET":
# Zazadame o code
if "code" not in request.GET:
return redirect(
facebook.auth_url(FACEBOOK_APP_ID, FACEBOOK_REDIRECT_URL)
)
# Vymenime code za token
elif "code" in request.GET:
access_token = facebook.GraphAPI().get_access_token_from_code(
request.GET["code"], FACEBOOK_REDIRECT_URL, FACEBOOK_APP_ID, FACEBOOK_APP_SECRET
)
client = Client.objects.get(id=request.user.id)
client.fb_token = access_token["access_token"]
client.set_fb_expiration(access_token["expires"])
client.save(update_fields=["fb_token", "fb_expiration"])
return HttpResponse("Ok...")
return Http404
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment