Пример #1
0
def submitted_for_approval(job, _):
    for x in UserModel.objects.filter(is_staff=True):
        send_mail((x.email, ),
                  'jobs/submitted_for_approval.email', {
                      'job': job,
                  },
                  fail_silently=True)
Пример #2
0
    def invalid_auth(self):
        num = 3
        minutes = 5
        seconds = 60 * minutes

        email = self.request.POST.get('auth-email', '')
        ip_address = self.request.META['REMOTE_ADDR']

        log.warning(self.request, "Rejected login attempt for {!r}".format(
                    email))

        for resource, val, prefix in (
            ('login:email', email, "for the email"),
            ('login:ip', ip_address, "from IP address"),
        ):
            if not val:
                continue

            # We have not reached a trigger limit
            if not rate_limit(resource, val, num - 1, seconds):
                continue

            # Avoid sending multiple emails
            if rate_limit('login:alert', None, 1, seconds):
                break

            staff = UserModel.objects.filter(is_staff=True) \
                .values_list('email', flat=True)

            send_mail((), 'account/alert.email', {
                'val': val,
                'num': num,
                'prefix': prefix,
                'minutes': minutes,
            }, bcc=staff, fail_silently=True)
Пример #3
0
def removed(job, history):
    send_mail((job.user.email, ),
              'jobs/removed.email', {
                  'job': job,
                  'reason': history.description,
              },
              fail_silently=True)
Пример #4
0
    def save(self):
        email = self.cleaned_data['email']

        send_mail(
            (email.email,),
            'passwords/forgot_password.email',
            {'user': email.user},
        )
Пример #5
0
    def save(self):
        user = self.cleaned_data['user']

        if user is None:
            return

        send_mail((user.email, ), 'account/reset_password/reset.email', {
            'token': get_token(user),
        })
Пример #6
0
    def save(self):
        user = self.cleaned_data['user']

        send_mail((user.email,),
            'account/forgot_password/forgot_password.email', {
                'user': user,
                'token': default_token_generator.make_token(user),
                'uidb36': int_to_base36(user.id),
            },
        )
Пример #7
0
    def save(self):
        user = super().save()

        send_mail((user.email, ),
                  'registration/validate.email', {
                      'token': get_token(user),
                  },
                  fail_silently=True)

        return user
Пример #8
0
    def send_email(self):
        email = self.cleaned_data['email']

        send_mail(
            (email,),
            'profile/emails/confirm.email', {
                'user': self.user,
                'signed': Signer().sign(email),
            },
        )
Пример #9
0
    def save(self):
        user = self.cleaned_data['user']

        send_mail(
            (user.email, ),
            'account/forgot_password/forgot_password.email',
            {
                'user': user,
                'token': default_token_generator.make_token(user),
                'uidb36': int_to_base36(user.id),
            },
        )
Пример #10
0
    def save(self):
        from_email = formataddr((
            self.cleaned_data['name'],
            self.cleaned_data['email'],
        ))

        send_mail(
            (settings.DEFAULT_FROM_EMAIL,),
            'static/contact.email',
            self.cleaned_data,
            from_email,
        )
Пример #11
0
    def save(self):
        from_email = formataddr((
            self.cleaned_data['name'],
            self.cleaned_data['email'],
        ))

        send_mail(
            (settings.DEFAULT_FROM_EMAIL, ),
            'static/contact.email',
            self.cleaned_data,
            from_email,
        )
Пример #12
0
    def save(self):
        password = get_random_string(8)

        instance = super(NewUserForm, self).save(commit=False)
        instance.set_password(password)
        instance.save()

        send_mail((instance.email,), 'auth/admin/new_user.email', {
            'user': instance,
            'password': password,
        })

        return instance
Пример #13
0
    def save(self):
        # Ensure that we generate tokens using their existing email
        self.instance.refresh_from_db()

        new_email = self.cleaned_data['email']

        send_mail((new_email, ),
                  'account/change_email/validate.email', {
                      'token': get_token(self.instance, new_email),
                  },
                  fail_silently=True)

        return new_email
Пример #14
0
    def save(self):
        username=invent_username(
            self.cleaned_data['first_name'],
            self.cleaned_data['last_name'],
        )

        user = User(
            is_active=False,
            first_name=self.cleaned_data['first_name'],
            last_name=self.cleaned_data['last_name'],
            username=username,
        )
        user.set_password(self.cleaned_data['password'])
        user.save()

        # Store the user's email address; we don't use User.email as we support
        # multiple email addresses.
        email = user.emails.create(email=self.cleaned_data['email'])

        # Update Profile model rather than create a new one.
        profile = super(RegistrationForm, self).save(commit=False)
        profile.user = user

        if profile.account_type == AccountEnum.INDIVIDUAL:
            profile.display_name = u"%s %s" % (user.first_name, user.last_name)
        else:
            profile.display_name = profile.organisation

        profile.save()

        # Send confirmation email
        send_mail((email.email,), 'registration/confirm.email', {
            'user': user,
        })

        return user
Пример #15
0
def approved(job, _):
    send_mail((job.user.email, ),
              'jobs/approved.email', {
                  'job': job,
              },
              fail_silently=True)