From ba40af743d1c5e3a2afc01c4086c9a00bc72063a Mon Sep 17 00:00:00 2001 From: Patrick Sulzle Date: Tue, 15 Mar 2022 20:57:21 +0100 Subject: [PATCH] Code review and sanitation. More understanding of concepts --- frontend/app.py | 26 ++++++++++++++------------ frontend/groclist.py | 33 +++++++++++++++++++++++++++++++++ frontend/templates/welcome.html | 3 ++- 3 files changed, 49 insertions(+), 13 deletions(-) create mode 100644 frontend/groclist.py diff --git a/frontend/app.py b/frontend/app.py index 22081be..cad0262 100644 --- a/frontend/app.py +++ b/frontend/app.py @@ -2,7 +2,10 @@ import pymongo from flask import Flask, request, render_template, url_for, redirect app = Flask(__name__) - +myclient = pymongo.MongoClient("mongodb://admin:pass@localhost:27017") +mydb = myclient["groclist_db"] +mycol_users = mydb["groclist_users"] +username="" @app.route("/", methods=['GET', 'POST']) def groclist_home(): @@ -15,29 +18,28 @@ def groclist_home(): return render_template('index.html',error=error) -@app.route("/welcome") -def groclist_welcome(): - return render_template("welcome.html") - @app.route("/login", methods=['GET', 'POST']) def groclist_login(): error = None if request.method == 'POST': - myclient = pymongo.MongoClient("mongodb://admin:pass@localhost:27017") - mydb = myclient["groclist_db"] - mycol = mydb["groclist_users"] username = request.form['username'] password = request.form['password'] - name = "" - if mycol.find_one({"username": username, "password": password}): - # for user_info in mycol.find({}, {"name": 0}): - # print("Welkom", user_info) + if mycol_users.find_one({"username": username, "password": password}): return redirect(url_for('groclist_welcome')) else: error = 'Username of wachtwoord onbekend. Probeer opnieuw' return render_template("login.html", error=error) +@app.route("/welcome", methods=['GET', 'POST']) +def groclist_welcome(): + if request.method == 'GET': + userid = mycol_users.find_one({"username": username}, {"_id": 1}) + print(userid) + return render_template("welcome.html", userid=userid) + else: + error = "Userid is niet bekend. Database defect" + return render_template("index.html", error=error) app.add_url_rule("/welcome", "welcome", groclist_welcome) diff --git a/frontend/groclist.py b/frontend/groclist.py new file mode 100644 index 0000000..20de421 --- /dev/null +++ b/frontend/groclist.py @@ -0,0 +1,33 @@ +import pymongo +from flask import Flask, request, render_template, redirect, url_for + +# initialize connection to database +app = Flask(__name__) +config = { + "username": "admin", + "password": "pass", + "server": "localhost:27017", +} +connector = "mongodb://{}:{}@{}".format(config["username"],config["password"], config["server"] +client = pymongo.MongoClient(connector) +db = client["groclist"] + +@app.route("/") +def main(): + return render_template("login.html") + +@app.route("/login", methods=["POST"]) +def login() + error = None + username = request.form["username"] + password = request.form["password"] + if db.cred.find_one({"username": username, "password": password}) + auth_user_id = db.cred.find_one({"username": username},{"_id", 1}) + return redirect(url_for("welcome", id=auth_user_id["_id"])) + else: + error = "Usernaam of wachtwoord onbekend, probeer opnieuw" + return render_template("login.html", error=error) + +@app.route("/welcome") +def welcome(id) + diff --git a/frontend/templates/welcome.html b/frontend/templates/welcome.html index ea8b5c8..dd1c619 100644 --- a/frontend/templates/welcome.html +++ b/frontend/templates/welcome.html @@ -6,8 +6,9 @@
-

Welcome to GrocList

+

Welcome to GrocList


+ Hello userid: {{ userid }}

Click here to go home.