예제 #1
0
def register(request):
    """Show the registration page.
    """
    
    if not request.user.is_anonymous():
        return HttpResponseRedirect('/')
    
    if request.method == 'POST': 
        form = SignUpForm(request.POST)
        if form.is_valid():
            real_name = form.cleaned_data['real_name']
            preferred_name = form.cleaned_data['preferred_name']
            email = form.cleaned_data['email']
            password = form.cleaned_data['password']
            username = generate_username(email)

            user, created = get_user_model().objects.get_or_create(username=username)
            if not created: 
                # This may happen if the form is submitted outside the normal
                # login flow with a user that already exists
                return render(request, 'accounts/registration_error.html')

            user.is_active = True
            user.set_password(password)
            user.email = email
            user.save()

            user.userdata.real_name = real_name
            user.userdata.preferred_name = preferred_name
            user.userdata.save()

            apply_user_permissions(user)
            # verify_email_address(request, user)
            
            return render(request, 'accounts/success.html')
    else:
        form = SignUpForm()

    c = {
        'form': form,
    }
    return render(request, 'accounts/register.html', c)    
예제 #2
0
def set_user_permissions(strategy, details, user=None, *args, **kwargs):
    """Configure any initial permissions/groups for the user. 
    """
    
    apply_user_permissions(user)
예제 #3
0
def set_user_permissions(strategy, details, user=None, *args, **kwargs):
    """Configure any initial permissions/groups for the user.
    """

    apply_user_permissions(user)