def update_settings(): if not is_logged_in(): flash('You must be logged in to perform this operation.', 'danger') return redirect('/') user_id = get_current_user_id() first_name = request.form['first_name'] last_name = request.form['last_name'] email = request.form['email'] db = Database() db.update_user_first_name(user_id, first_name) db.update_user_last_name(user_id, last_name) db.update_user_email_address(user_id, email) answer1 = request.form['answer1'] answer2 = request.form['answer2'] answer3 = request.form['answer3'] if (answer1 or answer2 or answer3): question1 = request.form['question1'] question2 = request.form['question2'] question3 = request.form['question3'] if len([question1, question2, question3]) != len( list(set([question1, question2, question3]))): flash('Questions are the same', 'danger') return redirect_to_referrer() db.delete_user_answers(user_id) db.create_answer(user_id, question1, answer1) db.create_answer(user_id, question2, answer2) db.create_answer(user_id, question3, answer3) refresh_cache() password = request.form['password'] password2 = request.form['confirm_password'] if len(password) > 0 and len(password2) > 0: if password == password2: db.update_user_password(user_id, password) else: flash('There was an issue; passwords were not updated.', 'danger') return redirect('/settings') questions = db.list_questions() return render_template('user_settings.html', success_message='Settings updated successfully', questions=questions)
def reset_password(): if request.method.upper() == 'GET': return render_template('reset_password.html') else: db = Database() userId = session['userId'] password = request.form['password'] password2 = request.form['confirm_password'] if len(password) > 0 and len(password2) > 0: if password == password2: db.update_user_question_guess(userId, 3) db.update_user_password(userId, password) flash('Password was successfully updated', 'success') return redirect('/') else: flash('There was an issue; passwords were not updated', 'danger') return redirect(request.url) return render_template('questions.html')