url(r'^profile/?$', 'edit_profile'),
url(r'^feedback/?$', 'send_feedback'),
url(r'^signup/?$', 'signup'),
- url(r'^user_logout/?$', 'user_logout'),
+ url(r'^logout/?$', 'logout'),
url(r'^admin/', include('astakos.im.admin.urls')),
)
-urlpatterns += patterns('django.contrib.auth.views',
- url(r'^logout/?$', 'logout')
-)
-
urlpatterns += patterns('astakos.im.target',
url(r'^login/redirect/?$', 'redirect.login')
)
from django.contrib.auth.decorators import login_required
from django.contrib import messages
from django.db import transaction
-from django.contrib.auth.views import logout
+from django.contrib.auth import logout as auth_logout
from django.utils.http import urlencode
from django.http import HttpResponseRedirect
def requires_anonymous(func):
"""
Decorator checkes whether the request.user is Anonymous and in that case
- redirects to `user_logout`.
+ redirects to `logout`.
"""
@wraps(func)
def wrapper(request, *args):
if not request.user.is_anonymous():
next = urlencode({'next': request.build_absolute_uri()})
- login_uri = reverse(user_logout) + '?' + next
+ login_uri = reverse(logout) + '?' + next
return HttpResponseRedirect(login_uri)
return func(request, *args)
return wrapper
form = LocalUserCreationForm(),
context_instance=get_context(request, extra_context))
-def user_logout(request):
+def logout(request, template='registration/logged_out.html', extra_context={}):
"""
- Wraps `django.contrib.auth.views.logout` and delete the cookie.
+ Wraps `django.contrib.auth.logout` and delete the cookie.
"""
- response = logout(request)
+ auth_logout(request)
+ response = HttpResponse()
response.delete_cookie(settings.COOKIE_NAME)
next = request.GET.get('next')
if next:
response['Location'] = next
response.status_code = 302
return response
- return response
\ No newline at end of file
+ html = render_to_string(template, context_instance=get_context(request, extra_context))
+ return HttpResponse(html)
\ No newline at end of file