Login

activation_required

Author:
offline
Posted:
June 27, 2008
Language:
Python
Version:
.96
Score:
-1 (after 3 ratings)

Simple decorator that checks for authentication and activation of account and redirect to login or activation page if needed

Your ulrsconf file must have named urls with parameters that you call that decorator

Dont forget to import reverse function from django.core.urlresolvers import reverse

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
def activation_required(login='login', activation='activation'):
    """
    Redirect user to:
    - login page if not authenticated
    - activation page if not activated

    examples:

    @activation_required('login-page', 'activation-page')
    def something(..):
        pass
    """
    def decorator(func):
        def wrapper(request, *args, **kw):
            if not request.user.is_authenticated():
                return HttpResponseRedirect(reverse(login))
            elif not request.user.is_active:
                return HttpResponseRedirect(reverse(activation))
            return func(request, *args, **kw)
        return wrapper
    return decorator

More like this

  1. Template tag - list punctuation for a list of items by shapiromatron 3 months, 2 weeks ago
  2. JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 3 months, 3 weeks ago
  3. Serializer factory with Django Rest Framework by julio 10 months, 2 weeks ago
  4. Image compression before saving the new model / work with JPG, PNG by Schleidens 11 months, 1 week ago
  5. Help text hyperlinks by sa2812 12 months ago

Comments

Please login first before commenting.