42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
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("index.html")
|
|
|
|
@app.route("/login", methods=["GET","POST"])
|
|
def login():
|
|
error = None
|
|
if request.method == "POST":
|
|
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},{"uuid", 1})
|
|
if auth_user_id:
|
|
app.logger.info(auth_user_id)
|
|
return render_template("welcome.html", id=auth_user_id["uuid"])
|
|
else:
|
|
return render_template("404.html")
|
|
else:
|
|
error = "Usernaam of wachtwoord onbekend, probeer opnieuw"
|
|
return render_template("login.html", error=error)
|
|
|
|
@app.route("/welcome/<id>", methods=['GET'])
|
|
def welcome(id):
|
|
print("Hello: ", id)
|
|
|
|
# start server with run method
|
|
if __name__ == "__main__":
|
|
app.run(debug=True) |