Пример #1
0
    def clean(self):
        if not self.cleaned_data['relation']:
            try:
                mate = User.objects.get(email=self.cleaned_data['email'].lower())

            except User.DoesNotExist:
                mate = User.objects.create_user(self.cleaned_data['email'].lower())

                msg = EmailMultiAlternatives(
                    unicode(u'%s %s %s' % (_(u'Uživatel'), self.user, _(u'vás zve do systému Yes4grow'))),
                    render_to_string('users/relation_create_mail.txt', {'user': self.user, 'mate': mate}),
                    settings.DEFAULT_FROM_EMAIL,
                    [mate.email],
                )
                msg.attach_alternative(render_to_string('users/relation_create_mail.html', {'user': self.user, 'mate': mate}), 'text/html'),
                msg.send()

            if mate:
                try:
                    relation = Relation.objects.get(user=self.user, mate=mate)

                except Relation.DoesNotExist:
                    relation = Relation(user=self.user, mate=mate)

                    if self.user.pk == mate.pk:
                        relation.is_confirmed = True

                    relation.save()

                self.cleaned_data['relation'] = relation

        return super(TaskRelationForm, self).clean()
Пример #2
0
    def form_valid(self, form):
        try:
            mate = User.objects.get(email=form.cleaned_data["email"].lower())

        except User.DoesNotExist:
            mate = User.objects.create_user(form.cleaned_data["email"].lower())

            msg = EmailMultiAlternatives(
                unicode(u"%s %s %s" % (_(u"Uživatel"), self.request.user, _(u"vás zve do systému Yes4grow"))),
                render_to_string("users/relation_create_mail.txt", {"user": self.request.user, "mate": mate}),
                settings.DEFAULT_FROM_EMAIL,
                [mate.email],
            )
            msg.attach_alternative(
                render_to_string("users/relation_create_mail.html", {"user": self.request.user, "mate": mate}),
                "text/html",
            ),
            msg.send()

        try:
            Relation.objects.get(user=self.request.user, mate=mate)

        except Relation.DoesNotExist:
            Relation.objects.create(user=self.request.user, mate=mate)

        return super(RelationCreateView, self).form_valid(form)
Пример #3
0
    def save(self, *args, **kwargs):
        if not self.email_sent:
            msg = EmailMultiAlternatives(
                unicode(u'%s %s %s' % (_(u'Uživatel'), self.relation.user, _(u'vám zadal úkol'))),
                render_to_string('users/taskrelation_mail.txt', {'object': self}),
                settings.DEFAULT_FROM_EMAIL,
                [self.relation.mate.email],
            )
            msg.attach_alternative(render_to_string('users/taskrelation_mail.html', {'object': self}), 'text/html'),
            msg.send()

            self.email_sent = True
            self.save()

        super(TaskRelation, self).save(*args, **kwargs)
Пример #4
0
    def form_valid(self, form):
        user = User.objects.create_user(form.cleaned_data["username"], form.cleaned_data["password1"])
        user.activation_code = uuid4()
        user.save()

        login(self.request, user)

        msg = EmailMultiAlternatives(
            unicode(_(u"Ověření e-mailové adresy ve službě Yes4grow")),
            render_to_string("users/user_confirm_mail.txt", {"user": user}),
            settings.DEFAULT_FROM_EMAIL,
            [user.email],
        )
        msg.attach_alternative(render_to_string("users/user_confirm_mail.html", {"user": user}), "text/html"),
        msg.send()

        return super(RegistrationView, self).form_valid(form)
Пример #5
0
    def form_valid(self, form):
        for user in form.users_cache:
            context = {
                "user": user,
                "uid": urlsafe_base64_encode(str(user.id)),
                "token": default_token_generator.make_token(user),
            }

            msg = EmailMultiAlternatives(
                unicode(_(u"Obnovení hesla do služby Yes4grow")),
                render_to_string("users/password_reset_mail.txt", context),
                settings.DEFAULT_FROM_EMAIL,
                [form.cleaned_data["email"]],
            )
            msg.attach_alternative(render_to_string("users/password_reset_mail.html", context), "text/html"),
            msg.send()

        return super(PasswordResetView, self).form_valid(form)