Example #1
0
def register(request):
    if request.user.is_authenticated():
        return redirect(request.GET.get('next',
                                        reverse('foro:profile-update')))

    if request.method == 'POST':
        form = RegistrationForm(data=request.POST)

        if not request.is_limited and form.is_valid():
            user = form.save()
            send_activation_email(request, user)
            messages.info(
                request,
                _("We have sent you an email so you can activate your account!"
                  ))

            # TODO: email-less activation
            # if not settings.REGISTER_EMAIL_ACTIVATION_REQUIRED:
            # login(request, user)
            # return redirect(request.GET.get('next', reverse('foro:profile-update')))

            return redirect(reverse('foro:user-login'))
    else:
        form = RegistrationForm()

    return render(request, 'foro/user/register.html', {
        'form': form,
    })
Example #2
0
 def test_user_activation_email_complete(self):
     """
     Integration test
     """
     req = RequestFactory().get('/')
     send_activation_email(req, self.user)
     self.assertEquals(len(mail.outbox), 1)
Example #3
0
    def test_user_activation_email(self):
        """
        Send activation email
        """
        self._monkey_sender_called = False

        def monkey_sender(request, subject, template_name, context, email):
            self.assertEqual(request, req)
            self.assertEqual(email, [self.user.email, ])

            activation_token = UserActivationTokenGenerator()
            token = activation_token.generate(self.user)
            self.assertDictEqual(context, {'token': token, 'user_id': self.user.pk})

            self.assertEqual(subject, _("User activation"))
            self.assertEqual(template_name, 'foro/user/activation_email.html')

            self._monkey_sender_called = True

        req = RequestFactory().get('/')

        org_sender, email.sender = email.sender, monkey_sender
        try:
            send_activation_email(req, self.user)
            self.assertTrue(self._monkey_sender_called)
        finally:
            email.sender = org_sender
Example #4
0
 def test_user_activation_email_complete(self):
     """
     Integration test
     """
     req = RequestFactory().get('/')
     send_activation_email(req, self.user)
     self.assertEquals(len(mail.outbox), 1)
Example #5
0
    def test_user_activation_email(self):
        """
        Send activation email
        """
        self._monkey_sender_called = False

        def monkey_sender(request, subject, template_name, context, email):
            self.assertEqual(request, req)
            self.assertEqual(email, [
                self.user.email,
            ])

            activation_token = UserActivationTokenGenerator()
            token = activation_token.generate(self.user)
            self.assertDictEqual(context, {
                'token': token,
                'user_id': self.user.pk
            })

            self.assertEqual(subject, _("User activation"))
            self.assertEqual(template_name, 'foro/user/activation_email.html')

            self._monkey_sender_called = True

        req = RequestFactory().get('/')

        org_sender, email.sender = email.sender, monkey_sender
        try:
            send_activation_email(req, self.user)
            self.assertTrue(self._monkey_sender_called)
        finally:
            email.sender = org_sender
Example #6
0
def resend_activation_email(request):
    if request.user.is_authenticated():
        return redirect(request.GET.get('next', reverse('foro:profile-update')))

    if request.method == 'POST':
        form = ResendActivationForm(data=request.POST)

        if not request.is_limited and form.is_valid():
            user = form.get_user()
            send_activation_email(request, user)

        messages.info(request, _("Si usted no recibe un correo electrónico, por favor asegúrese de que ha introducido"
                                 "la dirección que se registró, y comprobar su carpeta de correo no deseado."))
        return redirect(reverse('foro:user-login'))
    else:
        form = ResendActivationForm()

    return render(request, 'foro/user/activation_resend.html', {'form': form, })
Example #7
0
def register(request):
    if request.user.is_authenticated():
        return redirect(request.GET.get('next', reverse('foro:profile-update')))

    if request.method == 'POST':
        form = RegistrationForm(data=request.POST)

        if not request.is_limited and form.is_valid():
            user = form.save()
            send_activation_email(request, user)
            messages.info(request, _("Te hemos enviado un correo electrónico para que pueda activar su cuenta!!"))

            # TODO: email-less activation
            # if not settings.REGISTER_EMAIL_ACTIVATION_REQUIRED:
            # login(request, user)
            # return redirect(request.GET.get('next', reverse('foro:profile-update')))

            return redirect(reverse('foro:user-login'))
    else:
        form = RegistrationForm()

    return render(request, 'foro/user/register.html', {'form': form, })
Example #8
0
def resend_activation_email(request):
    if request.user.is_authenticated():
        return redirect(request.GET.get('next',
                                        reverse('foro:profile-update')))

    if request.method == 'POST':
        form = ResendActivationForm(data=request.POST)

        if not request.is_limited and form.is_valid():
            user = form.get_user()
            send_activation_email(request, user)

        messages.info(
            request,
            _("If you don't receive an email, please make sure you've entered "
              "the address you registered with, and check your spam folder."))
        return redirect(reverse('foro:user-login'))
    else:
        form = ResendActivationForm()

    return render(request, 'foro/user/activation_resend.html', {
        'form': form,
    })