def sign_up(): if request.method == 'GET': return render_template('sign_up.html') elif request.method == 'POST': first_name = request.form['first_name'] last_name = request.form['last_name'] fb_email = request.form['fb_email'] email = request.form['email'] if not first_name or not last_name or not fb_email or not email: flash(u'Please fill out all required fields', 'error') return render_template('sign_up.html') u = User(first_name=first_name, last_name=last_name, fb_email=fb_email,email=email) if not mongo.check_user(u.fb_email): s = hashlib.sha3_512() s.update((secret+u.email).encode('utf-8')) token = s.hexdigest() mongo.signed_up(u) mailgun.send_verification(u, token) return render_template('verify.html') else: flash('%s, we see you have already signed up! Please log in.' % (first_name), "success") return redirect('/') else: return render_template('404.html'), 404
def oauth_authorized(resp): next_url = request.args.get('next') or url_for('/show_symptoms') if resp is None or 'access_token' not in resp: return redirect('/') session['logged_in'] = True session['facebook_token'] = (resp['access_token'], '') data = facebook.get('/me').data fb_email = data['email'] found, email = mongo.check_user(fb_email) session['email'] = email if not found: return redirect('/sign_up') return redirect('/show_symptoms')
def login(): if request.method=="GET": return render_template("login.html", alert=False) else: if request.form['b']=="About": return redirect(url_for("about")) if request.form['b']=="Sign Up": return redirect(url_for("register")) if "Cancel" == request.form['b']: return redirect(url_for("login", alert=False)) if "Log In" == request.form['b']: uname = request.form['username'] pword = request.form['password'] if (mongo.check_user(uname, pword)): session['username']=request.form['username'] session['password']=request.form['password'] account = mongo.get_account(uname) session['first_name']=account['first_name'] session['last_name']=account['last_name'] return redirect(url_for('user_home', changed=False, today=today, time=time)) else : return render_template("login.html", alert=True)