コード例 #1
0
def confirm_email(request, user_id, hash):
    msg = _("Thanks for confirming your email")
    level = messages.SUCCESS
    try:
        email = UserEmail.objects.get(user=user_id, validation_hash=hash)
        if not email.hash_is_valid():
            raise UserEmail.DoesNotExist
    except UserEmail.DoesNotExist:
        if request.user.is_anonymous or request.user.has_unverified_emails():
            msg = _(
                "There was an error confirming your email. Please try again or "
                "visit your Account Settings to resend the verification email."
            )
            level = messages.ERROR
    else:
        email.is_verified = True
        email.validation_hash = ""
        email.save()
        email_verified.send(email=email.email, sender=email)
        logger.info(
            "user.email.confirm",
            extra={
                "user_id": user_id,
                "ip_address": request.META["REMOTE_ADDR"],
                "email": email.email,
            },
        )
    messages.add_message(request, level, msg)
    return HttpResponseRedirect(reverse("sentry-account-settings-emails"))
コード例 #2
0
def confirm_email(request, user_id, hash):
    msg = _('Thanks for confirming your email')
    level = messages.SUCCESS
    try:
        email = UserEmail.objects.get(user=user_id, validation_hash=hash)
        if not email.hash_is_valid():
            raise UserEmail.DoesNotExist
    except UserEmail.DoesNotExist:
        if request.user.is_anonymous() or request.user.has_unverified_emails():
            msg = _(
                'There was an error confirming your email. Please try again or '
                'visit your Account Settings to resend the verification email.'
            )
            level = messages.ERROR
    else:
        email.is_verified = True
        email.validation_hash = ''
        email.save()
        email_verified.send(email=email.email, sender=email)
        logger.info('user.email.confirm',
                    extra={
                        'user_id': user_id,
                        'ip_address': request.META['REMOTE_ADDR'],
                        'email': email.email,
                    })
    messages.add_message(request, level, msg)
    return HttpResponseRedirect(reverse('sentry-account-settings-emails'))
コード例 #3
0
ファイル: accounts.py プロジェクト: hosmelq/sentry
def confirm_email(request, user_id, hash):
    msg = _('Thanks for confirming your email')
    level = messages.SUCCESS
    try:
        email = UserEmail.objects.get(user=user_id, validation_hash=hash)
        if not email.hash_is_valid():
            raise UserEmail.DoesNotExist
    except UserEmail.DoesNotExist:
        if request.user.is_anonymous() or request.user.has_unverified_emails():
            msg = _(
                'There was an error confirming your email. Please try again or '
                'visit your Account Settings to resend the verification email.'
            )
            level = messages.ERROR
    else:
        email.is_verified = True
        email.validation_hash = ''
        email.save()
        email_verified.send(email=email.email, sender=email)
        logger.info(
            'user.email.confirm',
            extra={
                'user_id': user_id,
                'ip_address': request.META['REMOTE_ADDR'],
                'email': email.email,
            }
        )
    messages.add_message(request, level, msg)
    return HttpResponseRedirect(reverse('sentry-account-settings-emails'))