예제 #1
0
파일: forms.py 프로젝트: legnaleurc/sinkmb
 def save(self):
     try:
         realID = RealID.objects.get(
             user__exact=self.user,
             account__exact=self.cleaned_data['account'])
         realID.name = self.cleaned_data['realID']
     except RealID.DoesNotExist:
         realID = RealID(user=self.user,
                         name=self.cleaned_data['realID'],
                         account=self.cleaned_data['account'])
     realID.save()
예제 #2
0
파일: views.py 프로젝트: legnaleurc/sinkmb
def callback(request):
    try:
        token = request.GET['oauth_token']
        verifier = request.GET['oauth_verifier']
    except Exception:
        # TODO error page
        return redirect('/')
    try:
        requestToken = Request.objects.get(user__exact=request.user)
    except Request.DoesNotExist:
        # TODO error page
        return redirect('/')
    auth = tweepy.OAuthHandler(twitter.CONSUMER_KEY, twitter.CONSUMER_SECRET)
    auth.set_request_token(requestToken.key, requestToken.secret)
    requestToken.delete()
    try:
        access = auth.get_access_token(verifier)
    except TweepyError:
        # TODO error page
        return redirect('/')
    try:
        record = Access.objects.get(user__exact=request.user)
        record.token = access.key
        record.secret = access.secret
    except Access.DoesNotExist:
        record = Access(user=request.user,
                        key=access.key,
                        secret=access.secret)
        record.save()

    # add real id for user
    api = tweepy.API(auth, secure=True)
    me = api.me()
    try:
        realID = RealID.objects.get(user__exact=request.user,
                                    account__exact=me.screen_name)
        realID.name = request.user.username
    except RealID.DoesNotExist:
        realID = RealID(user=request.user,
                        name=request.user.username,
                        account=me.screen_name)
    realID.save()

    return redirect('/')