예제 #1
0
 def test_required_fields(self):
     """Test if the form throws an error by requiring username and email fields.
     """
     form = CustomUserCreationForm(data={
         'first_name': self.faker.first_name(),
         'last_name': self.faker.last_name(),
     })
     self.assertFalse(form.is_valid())
예제 #2
0
 def test_valid_submission(self):
     """Test if the form is filled correctly
     """
     form = CustomUserCreationForm(data={
         'username': self.faker.user_name(),
         'first_name': self.faker.first_name(),
         'last_name': self.faker.last_name(),
         'email': self.faker.ascii_safe_email(),
         'password1': 'testpassword',
         'password2': 'testpassword',
     })
     self.assertTrue(form.is_valid())
예제 #3
0
 def post(self, request):
     form = CustomUserCreationForm(request.POST)
     if not request.user.is_company_admin:
         return HttpResponseRedirect(
             reverse_lazy('landing:permission_denied'))
     if form.is_valid():
         company = request.user.company
         user = form.save(commit=False)
         user.company = company
         user.save()
         messages.success(request, '사용자가 추가되었습니다.')
         return HttpResponseRedirect(reverse_lazy('dashboard:user_list'))
     else:
         return render(request,
                       template_name='dashboard/users/create.html',
                       context={'form': form})
예제 #4
0
 def get(self, request):
     if not request.user.is_company_admin:
         return HttpResponseRedirect(
             reverse_lazy('landing:permission_denied'))
     form = CustomUserCreationForm()
     return render(request,
                   template_name='dashboard/users/create.html',
                   context={'form': form})
예제 #5
0
파일: views.py 프로젝트: LilJohny/TechBlog
def register(request):
    if request.method == "GET":

        return render(request, "account/register.html",
                      {"form": CustomUserCreationForm})

    elif request.method == "POST":

        form = CustomUserCreationForm(request.POST)

        if form.is_valid():

            user = form.save(commit=False)
            user.backend = "django.contrib.auth.backends.ModelBackend"
            user.save()
            user = form.save()
            login(request, user)

            return redirect(reverse("dashboard"))
예제 #6
0
def process_request(request):
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return HttpResponseRedirect('/', user)

    else:
        form = CustomUserCreationForm()

    context = {
        'form': form
    }

    return request.dmp.render('sign-up.html', context)
예제 #7
0
def register(request):
    if request.method == 'POST':
        f = CustomUserCreationForm(request.POST)
        if f.is_valid():
            error = False

            # send email verification now
            activation_key = helpers.generate_activation_key(
                username=request.POST['username'])
            subject = 'Livr.io - Verificação de conta'
            message = '''\n
            Visite o link abaixo para finalizar a criação da sua conta: \n\n
            %s://%s/account/activate/?key=%s''' % (
                request.scheme, request.get_host(), activation_key)

            try:
                send_mail(subject,
                          message,
                          settings.SERVER_EMAIL, [request.POST['email']],
                          fail_silently=False)
                messages.info(
                    request,
                    'Um link de verificacão foi enviado para seu e-mail.')

            except:
                error = True
                messages.info(
                    request,
                    'Não foi possível enviar o e-mail de confirmação. Tente novamente.'
                )

            if not error:
                u = f.save()

                u.activation_key = activation_key
                u.is_active = False
                u.is_trusty = False
                u.save()

            return redirect('account-register')

    else:
        f = CustomUserCreationForm()

    return render(request, 'account/register.html', {'form': f})
예제 #8
0
def register_view(request, *args, **kwargs):
    context = {}
    context['page_title'] = "Register"
    user = request.user

    roles = Role.objects.all()
    context['roles'] = roles

    if user.is_authenticated:
        return redirect('/')
    else:
        if request.POST:
            form = CustomUserCreationForm(request.POST)
            if form.is_valid:
                form.save()
                return redirect('login')
            else:
                context['errors'] = form.errors
        else:
            form = CustomUserCreationForm()

    context['form'] = form

    return render(request, "account/register.html", context)