def update_info(): if request.method == 'POST': if not request_wants_json(): user = User.find_by_id(g.user.id) else: user = User.find_by_id(request.form['uid']) user.firstname = request.form['firstname'] user.lastname = request.form['lastname'] user.email = request.form['email'] email_user = User.find_by_email(user.email) if not request_wants_json(): if email_user != None and email_user.id != g.user.id: flash("Our record shows that you have an account under the given email address already.") return render_template("users/update_info.html") else: if email_user != None and str(email_user.id) != request.form['uid']: ret = {"result": "Email address already exist."} return json.dumps(ret) if len(request.form['gender']) > 0: user.sex = request.form['gender'][0].upper() user.location = request.form['location'] user.date_of_birth = request.form['date_of_birth'] user.avatar = request.form['gravatar'] user.about_me = request.form['about-me'] User.save_to_db(user) if request_wants_json(): ret = {"result": "OK"} return json.dumps(ret) flash('Your changes have been made!') return render_template("users/update_info.html")
def after_login(resp): if resp.email is None or resp.email == "": flash('Invalid login. Please try again.') redirect(url_for('login')) user = User.find_by_email(resp.email) user_name = session['username'] if user is None: user = User(user_name = user_name, email = resp.email, password = "******") User.save_to_db(user) else: if user.user_name != user_name: flash('Username does not match open id. Try again.') return redirect(url_for('login')) session.pop('username', None) remember_me = False if 'remember_me' in session: remember_me = session['remember_me'] session.pop('remember_me', None) login_user(user, remember = remember_me) return redirect(request.args.get('next') or url_for('index'))