summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstilbruch <stilbruch@protonmail.com>2022-04-23 14:15:35 -0500
committerstilbruch <stilbruch@protonmail.com>2022-04-23 14:15:35 -0500
commit404bba9d518271533d5e4c83dabd8541726bf248 (patch)
treeeaf3abad243810279cd62e50b418aca1203f81a4
parent5d08424481a8a6ae1b69c96a6ee43394d9aa8963 (diff)
downloadStrengthy-404bba9d518271533d5e4c83dabd8541726bf248.tar.xz
Strengthy-404bba9d518271533d5e4c83dabd8541726bf248.zip
Move routes into seperate folder
-rw-r--r--app/routes/__init__.py3
-rw-r--r--app/routes/basic.py11
-rw-r--r--app/routes/user.py52
-rw-r--r--app/routes/workout.py (renamed from app/routes.py)57
-rw-r--r--app/static/js/record.js9
-rw-r--r--app/templates/workout/record.html9
6 files changed, 81 insertions, 60 deletions
diff --git a/app/routes/__init__.py b/app/routes/__init__.py
new file mode 100644
index 0000000..e243576
--- /dev/null
+++ b/app/routes/__init__.py
@@ -0,0 +1,3 @@
+from routes.user import *
+from routes.workout import *
+from routes.basic import *
diff --git a/app/routes/basic.py b/app/routes/basic.py
new file mode 100644
index 0000000..36f42f5
--- /dev/null
+++ b/app/routes/basic.py
@@ -0,0 +1,11 @@
+from app import app, db
+from flask_login import login_required
+
+@app.route("/", methods=["GET"])
+def index():
+ return render_template('index.html')
+
+@app.route("/home", methods=["GET"])
+@login_required
+def home():
+ return render_template('home.html')
diff --git a/app/routes/user.py b/app/routes/user.py
new file mode 100644
index 0000000..4568d97
--- /dev/null
+++ b/app/routes/user.py
@@ -0,0 +1,52 @@
+from app import app, db
+from flask import render_template, redirect, request, url_for, flash
+from flask_login import current_user, login_user, login_required, logout_user
+from forms import LoginForm, RegisterForm
+from tables import User
+
+@app.route("/login", methods=['GET', 'POST'])
+def login():
+ form = LoginForm()
+ username = form.username.data
+ password = form.password.data
+
+ if form.validate_on_submit():
+ # Valid submission
+ user = User.query.filter_by(username=username).first()
+
+ # TODO: show user if login succeeded
+ if user and user.verify_password(password):
+ login_user(user)
+ return redirect(url_for('home'))
+ else:
+ flash("Invalid username or password", "danger")
+
+ return render_template('user/login.html', form=form)
+
+@app.route("/logout", methods=['GET', 'POST'])
+def logout():
+ logout_user()
+ return redirect('/')
+
+@app.route("/register", methods=['GET', 'POST'])
+def register():
+ form = RegisterForm()
+ # Load data from form
+ username = form.username.data
+ password = form.password.data
+ email = form.email.data
+
+ if form.validate_on_submit():
+ # Valid submission
+ user = User.query.filter_by(username=username).first()
+ if not user:
+ # No user with this username
+ user = User(username, password, email)
+ db.session.add(user)
+ db.session.commit()
+ return redirect(url_for('login'))
+ else:
+ flash("User already exists", "danger")
+
+ return render_template('user/register.html', form=form)
+
diff --git a/app/routes.py b/app/routes/workout.py
index 76ea96a..db8ab48 100644
--- a/app/routes.py
+++ b/app/routes/workout.py
@@ -1,64 +1,9 @@
from app import app, db
from flask import render_template, redirect, request, url_for, flash
-from flask_login import current_user, login_user, login_required, logout_user
+from flask_login import current_user, login_required
from forms import LoginForm, RegisterForm, WorkoutCreateForm
from tables import User, Workout
-@app.route("/", methods=["GET"])
-def index():
- return render_template('index.html')
-
-@app.route("/home", methods=["GET"])
-@login_required
-def home():
- return render_template('home.html')
-
-@app.route("/login", methods=['GET', 'POST'])
-def login():
- form = LoginForm()
- username = form.username.data
- password = form.password.data
-
- if form.validate_on_submit():
- # Valid submission
- user = User.query.filter_by(username=username).first()
-
- # TODO: show user if login succeeded
- if user and user.verify_password(password):
- login_user(user)
- return redirect(url_for('home'))
- else:
- flash("Invalid username or password", "danger")
-
- return render_template('user/login.html', form=form)
-
-@app.route("/logout", methods=['GET', 'POST'])
-def logout():
- logout_user()
- return redirect('/')
-
-@app.route("/register", methods=['GET', 'POST'])
-def register():
- form = RegisterForm()
- # Load data from form
- username = form.username.data
- password = form.password.data
- email = form.email.data
-
- if form.validate_on_submit():
- # Valid submission
- user = User.query.filter_by(username=username).first()
- if not user:
- # No user with this username
- user = User(username, password, email)
- db.session.add(user)
- db.session.commit()
- return redirect(url_for('login'))
- else:
- flash("User already exists", "danger")
-
- return render_template('user/register.html', form=form)
-
@app.route("/workout/create", methods=['GET', 'POST'])
@login_required
def createWorkout():
diff --git a/app/static/js/record.js b/app/static/js/record.js
new file mode 100644
index 0000000..fedbdd7
--- /dev/null
+++ b/app/static/js/record.js
@@ -0,0 +1,9 @@
+
+// Called when the check at the end of a set line is clicked
+function onClickSetCheck(elem) {
+ if (elem.classList.contains('is-success')) {
+ elem.classList.remove('is-success');
+ } else {
+ elem.classList.add('is-success');
+ }
+}
diff --git a/app/templates/workout/record.html b/app/templates/workout/record.html
index 6463fe4..0908ef8 100644
--- a/app/templates/workout/record.html
+++ b/app/templates/workout/record.html
@@ -22,13 +22,12 @@
<input class="input" type="number" min="0">
</div>
</div>
-
- <!-- Done button -->
- <p class="button">
+ <!-- TODO: fix align -->
+ <button class="button" onClick="onClickSetCheck(this)">
<span class="icon is-small">
<i class="fa fa-check"></i>
</span>
- </p>
+ </button>
</div>
</div>
@@ -47,4 +46,6 @@
</div>
</div>
+<script async type="text/javascript" src="/static/js/record.js"></script>
+
{% endblock %}