def confirm_email(token): email = None try: email = Token.confirm_token(token) except: flash('The confirmation link is invalid or has expired.', 'danger') return redirect(url_for('index')) try: user = User.objects.get(email=email) if user.activated: flash('Account already confirmed. Please login.', 'success') else: user.activated = True DBOperations.activate_user(email) flash('You have confirmed your account. Thanks!', 'success') except: flash('The account activation URL specified is not associated to any account', 'danger') return redirect(url_for('index'))
def reset_password(): if request.method == 'GET': token = request.args.get('token') return render_template('update_password.html', token=token) elif request.method == 'POST': token = request.form['token'] email = Token.confirm_token(token) new_password = request.form['password'] errors = [] errors.append(validate_password(new_password)) flattened_errors_list = [error for errorSublist in errors for error in errorSublist] if(len(flattened_errors_list) == 0): user = dbOps.get_user_by_email(email) dbOps.edit_user_account(user.user_id, None, encrypt(new_password)) flash("Successfully updated password", 'Success') return render_template('index.html') else: formatted_error = '. '.join(str(error) for error in flattened_errors_list) flash(formatted_error) return render_template('update_password.html', token=token)
def confirm_email(token): email = None try: email = Token.confirm_token(token) except: flash('The confirmation link is invalid or has expired.', 'danger') return redirect(url_for('index')) try: user = User.objects.get(email=email) if user.activated: flash('Account already confirmed. Please login.', 'success') else: user.activated = True DBOperations.activate_user(email) flash('You have confirmed your account. Thanks!', 'success') except: flash( 'The account activation URL specified is not associated to any account', 'danger') return redirect(url_for('index'))
def reset_password(): if request.method == 'GET': token = request.args.get('token') return render_template('update_password.html', token=token) elif request.method == 'POST': token = request.form['token'] email = Token.confirm_token(token) new_password = request.form['password'] errors = [] errors.append(validate_password(new_password)) flattened_errors_list = [ error for errorSublist in errors for error in errorSublist ] if (len(flattened_errors_list) == 0): user = dbOps.get_user_by_email(email) dbOps.edit_user_account(user.user_id, None, encrypt(new_password)) flash("Successfully updated password", 'Success') return render_template('index.html') else: formatted_error = '. '.join( str(error) for error in flattened_errors_list) flash(formatted_error) return render_template('update_password.html', token=token)