Exemplo n.º 1
0
def resend_confirmation():
    """Resend the account confirmation URL."""
    token = current_user.generate_security_token()
    confirm_url = url_for('auth.confirm_email', token=token, _external=True)
    text = render_template('mail/confirmation.txt', vars={
        'user': current_user,
        'confirm_url': confirm_url
    })
    html = render_template('mail/confirmation.html', vars={
        'user': current_user,
        'confirm_url': confirm_url
    })
    subject = 'Please confirm your account registration.'
    send_mail(subject, recipients=[current_user.email], text=text, html=html)

    flash('A confirmation email has been sent to {0}'
          .format(current_user.email), 'success')
    return redirect(url_for('main.index'))
Exemplo n.º 2
0
def settings():
    """Present form to edit user details."""
    form = AccountSettingsForm()
    if form.validate_on_submit():
        if form.username.data != current_user.username:
            current_user.username = form.username.data

        if form.email.data != current_user.email:
            current_user.email = form.email.data
            current_user.confirmed = False
            token = current_user.generate_security_token()
            confirm_url = url_for('auth.confirm_email',
                                  token=token, _external=True)
            text = render_template('mail/confirmation-change.txt', vars={
                'user': current_user,
                'confirm_url': confirm_url
            })
            html = render_template('mail/confirmation-change.html', vars={
                'user': current_user,
                'confirm_url': confirm_url
            })
            subject = 'Please confirm your new email address.'
            send_mail(subject, recipients=[current_user.email],
                      text=text, html=html)

            flash('You need to confirm your new email address.', 'success')
            flash('A confirmation email has been sent to {0}'
                  .format(current_user.email), 'success')

        if form.new_password.data != '':
            current_user.password = form.new_password.data

        db.session.add(current_user)
        db.session.commit()
        flash('User details updated.')
        return redirect(request.path)
    form.username.data = current_user.username
    form.email.data = current_user.email
    return render_template('account/accountsettings.html', vars={'form': form})