def do_admin_login(): if request.method == 'POST': POST_USERNAME = str(request.form['username']) POST_PASSWORD = str(request.form['password']) password_hash = hasher(POST_PASSWORD) #Session sqlalchemy Session = sessionmaker(bind=engine) s = Session() #Requêtes SQL à la table users query = s.query(Utilisateur).filter(Utilisateur.username.in_([POST_USERNAME]), Utilisateur.password.in_([password_hash])) if query.first(): session['logged_in'] = True else: flash("L'identifiant ou le mot de passe est incorrect") return redirect(url_for('index')) return render_template('login.html')
def modify_account(key): if request.method == 'POST': Session = sessionmaker(bind=engine) s = Session() # Check si l'username existe déjà query = s.query(Utilisateur.username).filter( Utilisateur.username.in_([request.form['username']])) if query.first(): flash("Ce nom d'utilisateur existe déjà !") return redirect(url_for('create_account', key=key)) # On récupère l'adresse mail correspondante, qui doit forcement exister mail = s.query(RaphMail.email).filter(RaphMail.key_email.in_([key])) s.query(Utilisateur).filter(Utilisateur.email==str(mail.first()[0])).\ update({"username": str(request.form['username']), "password": hasher(str(request.form['password']))}) s.query(RaphMail).filter(RaphMail.key_email == key).delete() s.commit() return redirect(url_for('do_admin_login')) return render_template('modify_account.html', key=key)
def do_admin_login(): if request.method == 'POST': POST_USERNAME = str(request.form['username']) POST_PASSWORD = str(request.form['password']) password_hash = hasher(POST_PASSWORD) Session = sessionmaker(bind=engine) s = Session() query = s.query(Utilisateur).filter( Utilisateur.username.in_([POST_USERNAME]), Utilisateur.password.in_([password_hash])) result = query.first() if result: session['logged_in'] = True session['username'] = POST_USERNAME else: flash('Nom d\'utilisateur ou mot de passe incorrect !') return redirect(url_for('home')) return render_template('login.html')