mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 06:42:16 +00:00
41 lines
1.5 KiB
Python
41 lines
1.5 KiB
Python
from django.http import HttpResponse
|
|
from django.shortcuts import render_to_response, get_object_or_404, redirect
|
|
from django.template import RequestContext
|
|
from django.contrib.auth.decorators import login_required
|
|
from django.contrib import messages
|
|
|
|
from piston import forms
|
|
from piston.models import Token
|
|
|
|
@login_required
|
|
def oauth_callback_view(request, token):
|
|
return render_to_response('piston/callback_view.html', {'token': token }, context_instance=RequestContext(request))
|
|
|
|
|
|
@login_required
|
|
def oauth_auth_view(request, token, callback, params):
|
|
form = forms.OAuthAuthenticationForm(initial={
|
|
'oauth_token': token.key,
|
|
'oauth_callback': token.get_callback_url() or callback,
|
|
})
|
|
|
|
return render_to_response('piston/authorize_token.html',
|
|
{ 'form': form, 'consumer': token.consumer, 'user': token.user, 'request': request }, context_instance=RequestContext(request))
|
|
|
|
|
|
@login_required
|
|
def oauth_list_tokens(request):
|
|
# List all Access tokens
|
|
tokens = Token.objects.filter(token_type=Token.ACCESS, user=request.user)
|
|
return render_to_response('api/view_tokens.html', { 'tokens': tokens, 'request': request }, context_instance=RequestContext(request))
|
|
|
|
|
|
@login_required
|
|
def oauth_revoke_token(request, key):
|
|
token = get_object_or_404(Token, key=key)
|
|
if token.user == request.user:
|
|
token.delete()
|
|
messages.success(request, "Access for %s has been revoked" % token.consumer.name, fail_silently=True)
|
|
|
|
return redirect(oauth_list_tokens)
|