def login_create_account(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): email = form.data.get('email').lower() user_hash = resolve_user_by_email(email) if user_hash: flash( u'Účet s tímto e-mailem již existuje, ' u'chcete obnovit zapomenuté heslo?', 'warning') return redirect( url_for('login_forgotten_password', email=email)) raw_email = email email = base64.b64encode(email) token = md5("%s|%s" % (app.secret_key, email)).hexdigest() url = url_for('login_click_from_email', token=token, email=email, _external=True) if app.debug: flash(url, "debug") send_mail(u'Vytvoření účtu', raw_email, "data/verify-account.md", url) return redirect(url_for('login_email_verify')) else: form = EmailForm() return render_template('login_create_account.html', form=form)
def login_facebook_authorized(resp): if resp is None: return 'Access denied: reason=%s error=%s' % ( request.args['error_reason'], request.args['error_description']) session['facebook_token'] = (resp['access_token'], '') me = facebook.get('/me') user_hash = resolve_user_by_email(me.data['email']) if not user_hash: print me.data pass # pokud ucet neexistuje, vytvorime (a vyplnime) ho z FB user_hash = create_account(me.data['email'], None, data={ 'verified': True, 'name': me.data['name'], 'location': me.data.get('location', {}).get('name', None), 'gender': me.data.get('gender', None), 'bio': me.data.get('bio', None), }) session['user_hash'] = user_hash # prihlaseni hotovo return redirect(request.args.get('next') or url_for('index'))
def login_forgotten_password(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): email = form.data.get('email') if not resolve_user_by_email(email): flash(u'Nejprve si svůj e-mail zaregistrujte', 'warning') redirect(url_for('login_create_account')) raw_email = email email = base64.b64encode(email) token = md5("%s|%s" % (app.secret_key, email)).hexdigest() url = url_for('login_click_from_email_password', token=token, email=email, _external=True) if app.debug: flash(url, "debug") send_mail(u'Obnovení hesla', raw_email, "data/reset-password.md", url) return redirect(url_for('login_forgotten_verify')) else: form = EmailForm(request.args) return render_template('login_forgotten.html', form=form)
def login_create_account(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): email = form.data.get('email').lower() user_hash = resolve_user_by_email(email) if user_hash: flash( u'Účet s tímto e-mailem již existuje, ' u'chcete obnovit zapomenuté heslo?', 'warning') return redirect(url_for( 'login_forgotten_password', email=email)) raw_email = email email = base64.b64encode(email) token = md5("%s|%s" % (app.secret_key, email)).hexdigest() url = url_for( 'login_click_from_email', token=token, email=email, _external=True) if app.debug: flash(url, "debug") send_mail( u'Vytvoření účtu', raw_email, "data/verify-account.md", url) return redirect(url_for('login_email_verify')) else: form = EmailForm() return render_template('login_create_account.html', form=form)
def login(): next = session.get('next', None) if request.method == "POST": form = LoginForm(request.form) if form.validate(): user_hash = resolve_user_by_email( form.data.get('email'), form.data.get('password')) if not user_hash: session['default_email'] = form.data.get('email') flash( u'Neplatná kombinace e-mailu a hesla, zkuste to znovu.', 'warning') else: session.clear() session['user_hash'] = user_hash else: form = LoginForm() if check_auth(): flash(u'Nyní jste přihlášen', 'success') return redirect(next or url_for('login_settings')) return render_template("login.html", form=form)
def login_forgotten_password(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): email = form.data.get('email') if not resolve_user_by_email(email): flash(u'Nejprve si svůj e-mail zaregistrujte', 'warning') redirect(url_for('login_create_account')) raw_email = email email = base64.b64encode(email) token = md5("%s|%s" % (app.secret_key, email)).hexdigest() url = url_for( 'login_click_from_email_password', token=token, email=email, _external=True) if app.debug: flash(url, "debug") send_mail( u'Obnovení hesla', raw_email, "data/reset-password.md", url) return redirect(url_for('login_forgotten_verify')) else: form = EmailForm(request.args) return render_template('login_forgotten.html', form=form)
def login_create_account(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): email = form.data.get("email").lower() user_hash = resolve_user_by_email(email) if user_hash: flash(u"Účet s tímto e-mailem již existuje, " u"chcete obnovit zapomenuté heslo?", "warning") return redirect(url_for("login_forgotten_password", email=email)) # TODO send email email = base64.b64encode(email) token = md5("%s|%s" % (app.secret_key, email)).hexdigest() url = url_for("login_click_from_email", token=token, email=email, _external=True) flash("tohle poslu mailem - %s " % url, "debug") return redirect(url_for("login_email_verify")) else: form = EmailForm() return render_template("login_create_account.html", form=form)
def login_reset_password(): email = session.get("reset-email", None) if not email: abort(403) if request.method == "POST": form = PasswordForm(request.form) if form.validate(): user_hash = resolve_user_by_email(email) update_password(user_hash, email, form.data.get("password", None)) next = session.get("next", None) session.clear() session["user_hash"] = user_hash flash(u"Heslo bylo změneno", "success") return redirect(next or url_for("index")) else: form = PasswordForm() return render_template("login_reset_password.html", form=form)
def login_forgotten_password(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): email = form.data.get("email") if not resolve_user_by_email(email): flash(u"Nejprve si svůj e-mail zaregistrujte", "warning") redirect(url_for("login_create_account")) # TODO send mail email = base64.b64encode(email) token = md5("%s|%s" % (app.secret_key, email)).hexdigest() url = url_for("login_click_from_email_password", token=token, email=email, _external=True) flash("tohle poslu mailem - %s " % url, "debug") return redirect(url_for("login_forgotten_verify")) else: form = EmailForm(request.args) return render_template("login_forgotten.html", form=form)
def login_reset_password(): email = session.get('reset-email', None) if not email: abort(403) if request.method == "POST": form = PasswordForm(request.form) if form.validate(): user_hash = resolve_user_by_email(email) update_password(user_hash, email, form.data.get('password', None)) next = session.get('next', None) session.clear() session['user_hash'] = user_hash flash(u'Heslo bylo změneno', 'success') return redirect(next or url_for('index')) else: form = PasswordForm() return render_template('login_reset_password.html', form=form)
def login(): next = session.get("next", None) if request.method == "POST": form = LoginForm(request.form) if form.validate(): user_hash = resolve_user_by_email(form.data.get("email"), form.data.get("password")) if not user_hash: session["default_email"] = form.data.get("email") flash(u"Neplatná kombinace e-mailu a hesla, zkuste to znovu.", "warning") else: session.clear() session["user_hash"] = user_hash else: form = LoginForm() if check_auth(): flash(u"Nyní jste přihlášen", "success") return redirect(next or url_for("login_settings")) return render_template("login.html", form=form)
def login_facebook_authorized(resp): if resp is None: return 'Access denied: reason=%s error=%s' % ( request.args['error_reason'], request.args['error_description'] ) session['facebook_token'] = (resp['access_token'], '') me = facebook.get('/me') user_hash = resolve_user_by_email(me.data['email']) if not user_hash: # me.data # pokud ucet neexistuje, vytvorime (a vyplnime) ho z FB user_hash = create_account(me.data['email'], None, data={ 'verified': True, 'name': me.data['name'], 'location': me.data.get('location', {}).get('name', None), 'gender': me.data.get('gender', None), 'bio': me.data.get('bio', None), }) session['user_hash'] = user_hash # prihlaseni hotovo return redirect(request.args.get('next') or url_for('index'))