Exemple #1
0
def update(idProduit):
    produit = get_produit(idProduit)

    if request.method == "POST":
        titre = request.form["titre"]
        annee_sortie = request.form["annee_sortie"]
        prix = request.form["prix"]
        quantite = request.form["quantite"]
        image = request.form["image"]
        description = request.form["description"]
        error = None

        if not titre:
            error = "Un titre est requis."

        if not prix:
            error = "Un prix est requis."

        if not quantite:
            error = "Une quantite est requise."

        if error is not None:
            flash(error)
        else:
            db = get_db()
            db.execute(
                "UPDATE Produit SET titre = ?, annee_sortie = ?, prix = ?, quantite = ?, image = ?, description = ?"
                " WHERE idProduit = ?",
                (titre, annee_sortie, prix, quantite, image, description,
                 idProduit),
            )
            db.commit()
            return redirect(url_for("index"))

    return render_template("update.html", produit=produit)
Exemple #2
0
def create():
    if request.method == "POST":
        titre = request.form["titre"]
        annee_sortie = request.form["annee_sortie"]
        prix = request.form["prix"]
        quantite = request.form["quantite"]
        image = request.form["image"]
        description = request.form["description"]
        error = None

        if not titre:
            error = "Un titre est requis."

        if not prix:
            error = "Un prix est requis."

        if not quantite:
            error = "Une quantite est requise."

        if error is not None:
            flash(error)
        else:
            db = get_db()
            db.execute(
                "INSERT INTO Produit (titre, annee_sortie, prix, quantite, image, description)"
                " VALUES (?, ?, ?, ?, ?, ?)",
                (titre, annee_sortie, prix, quantite, image, description),
            )
            db.commit()
            return redirect(url_for("index"))

    return render_template("create.html")
Exemple #3
0
def register():
    if request.method == "POST":
        email = request.form["email"]
        mdp = request.form["mdp"]
        nom = request.form["nom"]
        prenom = request.form["prenom"]
        db = get_db()
        error = None

        if not email:
            error = "Email requis."
        elif not mdp:
            error = "Mot de passe requis."
        elif (db.execute("SELECT idClient FROM Client WHERE email = ?",
                         (email, )).fetchone() is not None):
            error = "Email {} déjà renseigné.".format(email)

        if error is None:
            db.execute(
                "INSERT INTO Client (email, mdp, nom, prenom) VALUES (?, ?, ?, ?)",
                (email, generate_password_hash(mdp), nom, prenom),
            )
            db.commit()
            return redirect(url_for("auth.login"))

        flash(error)

    return render_template("auth/register.html")
Exemple #4
0
def load_logged_in_user():
    user_id = session.get("user_id")

    if user_id is None:
        g.user = None
    else:
        g.user = (get_db().execute("SELECT * FROM Client WHERE idClient = ?",
                                   (user_id, )).fetchone())
Exemple #5
0
def get_produit(id):
    produit = (get_db().execute(
        "SELECT p.idProduit, p.titre, p.annee_sortie, p.prix, p.quantite, p.image, p.description"
        " FROM Produit p "
        " WHERE p.idProduit = ?",
        (id, ),
    ).fetchone())

    if produit is None:
        abort(404, "Le produit d'id {0} n'existe pas.".format(id))

    return produit
Exemple #6
0
def login():
    if request.method == "POST":
        email = request.form["email"]
        mdp = request.form["mdp"]
        db = get_db()
        error = None
        client = db.execute("SELECT * FROM Client WHERE email = ?",
                            (email, )).fetchone()

        if client is None:
            error = "Email incorrect."
        elif not check_password_hash(client["mdp"], mdp):
            error = "Mot de passe incorrect."

        if error is None:
            session.clear()
            session["user_id"] = client["idClient"]
            return redirect(url_for("index"))

        flash(error)

    return render_template("auth/login.html")
Exemple #7
0
def delete(idProduit):
    get_produit(idProduit)
    db = get_db()
    db.execute("DELETE FROM Produit WHERE idProduit = ?", (idProduit, ))
    db.commit()
    return redirect(url_for("index"))
Exemple #8
0
def index():
    db = get_db()
    produits = db.execute(
        "SELECT p.idProduit, p.titre, p.annee_sortie, p.prix, p.quantite, p.image, p.description"
        " FROM Produit p ").fetchall()
    return render_template("index.html", produits=produits)