From 533ab8e8e100911e460d595a21b7919abbaddb75 Mon Sep 17 00:00:00 2001 From: Michel V Date: Thu, 25 Jun 2020 11:57:19 +0200 Subject: [PATCH] Add Some functions to manage db --- app/database.py | 28 ++++++++++++++++++++++++++++ app/routes.py | 8 ++++++++ app/templates/view.html | 6 +++--- 3 files changed, 39 insertions(+), 3 deletions(-) create mode 100644 app/database.py diff --git a/app/database.py b/app/database.py new file mode 100644 index 0000000..844dc43 --- /dev/null +++ b/app/database.py @@ -0,0 +1,28 @@ +import os +from os import listdir +from app import app, db +from app.models import File, User + +def cleardata(): + files = File.query.all() + for f in files: + db.session.delete(f) + db.session.commit() + +def updatedata(username): + user = User.query.filter_by(username=username).first() + if not user is None: + folder = os.path.join(app.config['FILES_DIR'], user.username) + files = listdir(folder) + for f in files: + filetodb = File(name = f, user = user) + db.session.add(filetodb) + db.session.commit() + +def updatealldata(): + for user in User.query.all(): + updatedata(user.username) + +def recreatealldata(): + cleardata() + updatealldata() \ No newline at end of file diff --git a/app/routes.py b/app/routes.py index 5d3301a..c2ebdcb 100644 --- a/app/routes.py +++ b/app/routes.py @@ -114,6 +114,14 @@ def viewUser(): return redirect(url_for('home')) if current_user.isAdmin: return redirect(url_for('home')) + files = [] + for filefromdb in File.query.all(): + if filefromdb.user == current_user: + files.append(filefromdb) + if not len(files): + flash(words['ErrorNoFiles']) + return redirect(url_for('home')) + return render_template('view.html', title=words['nameView'], dico=words, userlogged=current_user, files=files) # Admins' View Page # It will show all files which belong to the requested user diff --git a/app/templates/view.html b/app/templates/view.html index 2ba1279..c5d0137 100644 --- a/app/templates/view.html +++ b/app/templates/view.html @@ -1,9 +1,9 @@ {% extends 'base.html' %} {% block content %} -{% for file in files %}
- | {{ file.name }}, {{ file.user.username }} | -
+{% for file in files %} +

| {{ file.name }}, {{ file.user.username }} |

{% endfor %} + {% endblock %} \ No newline at end of file