Example #1
0
def signUp(request):
    if request.method == 'POST':
        uf = UserForm(request.POST, prefix='user')
        af = AvatarForm(request.POST, request.FILES, prefix='author')
        if uf.is_valid() and af.is_valid():
            user = uf.save(commit=False)
            user.is_active = True
            user.set_password(user.password)
            user.save()
            author = af.save(commit=False)
            author.user = user
            author.save()
            sendConfirmationMail.delay(user.id)
            createProfileImages.delay(user.id)
            messages.success(request, _('Sign Up Success!'))
            messages.info(request, _('Please go to your inbox and read the activation mail'))
            return HttpResponseRedirect(reverse('pageHome'))
    else:
        uf = UserForm(prefix='user')
        af = AvatarForm(prefix='author')

    return render(request, 'signup.html', dict(userForm=uf, avatarForm=af), )
Example #2
0
def settings(request):
    author = Author.objects.get(slug=request.session['author']['slug'])

    if not author.is_verified:
        messages.warning(request, _('Your account not verified. Please read your mail for verify process.'))

    user = author.user

    upf = UserPasswordForm(prefix='password')
    uaf = AvatarForm(prefix='avatar')
    uef = UserEmailForm(prefix='email')

    if request.method == "POST":

        if request.POST['type'] == "change_password":
            upf = UserPasswordForm(request.POST, prefix='password')
            if upf.is_valid():
                upf.save()
                createProfileImages.delay(user.id)
                messages.success(request, _('Password Changed !'))
                return HttpResponseRedirect(reverse('pageSettings'))
        elif request.POST['type'] == "change_email":
            uef = UserEmailForm(request.POST, prefix='email')
            if uef.is_valid():
                user.email = uef.save()
                author.is_verified = False
                author.save()
                sendConfirmationMail.delay(user.id)
                messages.success(request, _('Email Change Success!'))
                messages.info(request, _('Please go to your inbox and read the re-activation mail'))
                return HttpResponseRedirect(reverse('pageSettings'))
        elif request.POST['type'] == "change_avatar":
            uaf = AvatarForm(request.POST, request.FILES, prefix='avatar')
            if uaf.is_valid():
                uaf.save()
                messages.success(request, _('Avatar Changed, You look good!'))
                return HttpResponseRedirect(reverse('pageSettings'))

    return render(request, 'settings.html', dict(upf=upf, uef=uef, uaf=uaf))