Skip to content

Instantly share code, notes, and snippets.

@SonyaEick
Created October 25, 2013 16:00
Show Gist options
  • Save SonyaEick/4efdc32b7a4cc41e68e6 to your computer and use it in GitHub Desktop.
Save SonyaEick/4efdc32b7a4cc41e68e6 to your computer and use it in GitHub Desktop.
A small snippet of code I've written that is ready for production. Super simple, straight forward login process. Written as an alternative to signing up/in with twitter. Tech: Python, Flask, Jinja
@blueprint.route('/register', methods=['GET','POST'])
def register():
if request.method == 'GET':
return render_template('influencer/register.jt')
data = request.form.to_dict()
# pass data to validation lib to be validated
result = v.influencer_register(data)
if result.is_valid():
#check for duplicate
active_influencer = get_influencer_by_email(result.get_value('email'))
if not active_influencer:
i = create_influencer(**result.get_valid())
g.s.add(i)
flash('Success!')
return redirect(url_for('.signin_email'))
flash('That email address already exists')
return redirect(url_for('.signin_email'))
flash('Something went wrong')
return redirect(url_for('.register'))
@blueprint.route('/signin/email', methods=['GET', 'POST'])
def signin_email():
if request.method == 'GET':
return render_template('influencer/signin.jt')
data = request.form.to_dict()
# pass to validation lib to be validated
result = v.influencer_register(data)
if result.is_valid():
# check for existing
active_influencer = get_influencer_by_email(result.get_value('email'))
if active_influencer:
h.login_influencer(active_influencer)
flash('login success!')
return h.redirect_home()
flash('That user does not exist')
return redirect(url_for('.signin_email'))
@blueprint.route('/signup/confirm')
@decorate.require_influencer
def signup_confirm():
return render_template('influencer/signup-confirm.jt')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment