summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/routes/__init__.py1
-rw-r--r--app/routes/api.py17
-rw-r--r--app/routes/basic.py1
-rw-r--r--app/routes/user.py1
-rw-r--r--app/templates/home.html2
5 files changed, 21 insertions, 1 deletions
diff --git a/app/routes/__init__.py b/app/routes/__init__.py
index e243576..09fcbf3 100644
--- a/app/routes/__init__.py
+++ b/app/routes/__init__.py
@@ -1,3 +1,4 @@
+from routes.api import *
from routes.user import *
from routes.workout import *
from routes.basic import *
diff --git a/app/routes/api.py b/app/routes/api.py
new file mode 100644
index 0000000..58b4732
--- /dev/null
+++ b/app/routes/api.py
@@ -0,0 +1,17 @@
+from app import app, db
+from flask import redirect, request
+from flask_login import current_user, login_required
+from tables import Workout
+
+@app.route("/api/workout/delete", methods=['GET'])
+@login_required
+def api_workout_delete():
+ if 'id' not in request.args:
+ return redirect('/home');
+
+ workout = Workout.query.filter_by(id=int(request.args['id']), user_id=current_user.id).first()
+ if workout:
+ db.session.delete(workout)
+ db.session.commit()
+
+ return redirect('/home')
diff --git a/app/routes/basic.py b/app/routes/basic.py
index 36f42f5..5883b97 100644
--- a/app/routes/basic.py
+++ b/app/routes/basic.py
@@ -1,4 +1,5 @@
from app import app, db
+from flask import render_template
from flask_login import login_required
@app.route("/", methods=["GET"])
diff --git a/app/routes/user.py b/app/routes/user.py
index 4568d97..d218738 100644
--- a/app/routes/user.py
+++ b/app/routes/user.py
@@ -24,6 +24,7 @@ def login():
return render_template('user/login.html', form=form)
@app.route("/logout", methods=['GET', 'POST'])
+@login_required
def logout():
logout_user()
return redirect('/')
diff --git a/app/templates/home.html b/app/templates/home.html
index 9f8dfe9..c9aa90d 100644
--- a/app/templates/home.html
+++ b/app/templates/home.html
@@ -79,7 +79,7 @@
</p>
</section>
<footer class="modal-card-foot">
- <button class="button is-danger">Confirm</button>
+ <a href="/api/workout/delete?id={{ workout.id }}" class="button is-danger">Confirm</a>
<button class="button">Cancel</button>
</footer>
</div>