summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/routes.py12
-rw-r--r--app/templates/base/form.html33
-rw-r--r--app/templates/base/layout.html (renamed from app/templates/base.html)0
-rw-r--r--app/templates/home.html (renamed from app/templates/base/home.html)2
-rw-r--r--app/templates/index.html (renamed from app/templates/base/index.html)2
-rw-r--r--app/templates/user/login.html79
-rw-r--r--app/templates/user/register.html85
7 files changed, 103 insertions, 110 deletions
diff --git a/app/routes.py b/app/routes.py
index 7ae1fb1..c1424b5 100644
--- a/app/routes.py
+++ b/app/routes.py
@@ -28,8 +28,7 @@ def login():
login_user(user)
return redirect(url_for('home'))
else:
- flash("invalid login")
- return redirect(url_for('register'))
+ flash("Invalid username or password", "danger")
return render_template('user/login.html', form=form)
@@ -46,8 +45,6 @@ def register():
password = form.password.data
email = form.email.data
- print("register")
-
if form.validate_on_submit():
# Valid submission
user = User.query.filter_by(username=username).first()
@@ -56,8 +53,9 @@ def register():
user = User(username, password, email)
db.session.add(user)
db.session.commit()
+ return redirect(url_for('login'))
+ else:
+ flash("User already exists", "danger")
- return redirect(url_for('login'))
- else:
- return render_template('user/register.html', form=form)
+ return render_template('user/register.html', form=form)
diff --git a/app/templates/base/form.html b/app/templates/base/form.html
new file mode 100644
index 0000000..830afbe
--- /dev/null
+++ b/app/templates/base/form.html
@@ -0,0 +1,33 @@
+{% extends 'base/layout.html' %}
+
+{% block content %}
+ <div class="form">
+ <section class="hero is-primary is-fullheight-with-navbar">
+ <div class="hero-body">
+ <div class="container">
+ <div class="columns is-centered">
+ <div class="column is-5-tablet is-4-desktop is-3-widescreen">
+ <h1 class="title is-2">{% block title %}{% endblock %}</h1>
+
+ <!-- TODO: render errors -->
+ {% with messages = get_flashed_messages(with_categories=true) %}
+ {% if messages %}
+ {% for category, message in messages %}
+ <div class="notification is-{{ category }}">
+ {{ message }}
+ </div>
+ {% endfor %}
+ {% endif %}
+ {% endwith %}
+
+ <form method="POST" class="box">
+ {{ form.csrf_token }}
+ {% block form %}{% endblock %}
+ </form>
+ </div>
+ </div>
+ </div>
+ </div>
+ </section>
+ </div>
+{% endblock %}
diff --git a/app/templates/base.html b/app/templates/base/layout.html
index c539baa..c539baa 100644
--- a/app/templates/base.html
+++ b/app/templates/base/layout.html
diff --git a/app/templates/base/home.html b/app/templates/home.html
index 14dd441..e640325 100644
--- a/app/templates/base/home.html
+++ b/app/templates/home.html
@@ -1,4 +1,4 @@
-{% extends 'base.html' %}
+{% extends 'base/layout.html' %}
{% block content %}
User Homepage
diff --git a/app/templates/base/index.html b/app/templates/index.html
index 3e91518..04b89ef 100644
--- a/app/templates/base/index.html
+++ b/app/templates/index.html
@@ -1,4 +1,4 @@
-{% extends 'base.html' %}
+{% extends 'base/layout.html' %}
{% block content %}
Index Page
diff --git a/app/templates/user/login.html b/app/templates/user/login.html
index 9aaf33c..6bd4c1c 100644
--- a/app/templates/user/login.html
+++ b/app/templates/user/login.html
@@ -1,54 +1,35 @@
-{% extends 'base.html' %}
+{% extends 'base/form.html' %}
-{% block content %}
- <div class="login">
- <div class="form">
- <section class="hero is-primary is-fullheight-with-navbar">
- <div class="hero-body">
- <div class="container">
- <div class="columns is-centered">
- <div class="column is-5-tablet is-4-desktop is-3-widescreen">
- <h1 class="title is-2">Log in</h1>
+{% block title %}Login{% endblock %}
- <!-- TODO: render errors -->
-
- <form method="POST" class="box">
- {{ form.csrf_token }}
- <div class="field">
- <label for="" class="label">Username</label>
- <div class="control has-icons-left">
- <input id="username" name="username" type="text" class="input" required>
- <span class="icon is-small is-left">
- <i class="fa fa-user"></i>
- </span>
- </div>
- </div>
- <div class="field">
- <label for="" class="label">Password</label>
- <div class="control has-icons-left">
- <input id="password" name="password" type="password" placeholder="*******" class="input" required>
- <span class="icon is-small is-left">
- <i class="fa fa-lock"></i>
- </span>
- </div>
- </div>
- <div class="field">
- <label for="" class="checkbox">
- <input type="checkbox">
- Remember me
- </label>
- </div>
- <div class="field">
- <button class="button is-success">
- Log in
- </button>
- </div>
- </form>
- </div>
- </div>
- </div>
- </div>
- </section>
+{% block form %}
+ <div class="field">
+ <label for="" class="label">Username</label>
+ <div class="control has-icons-left">
+ <input id="username" name="username" type="text" class="input" required>
+ <span class="icon is-small is-left">
+ <i class="fa fa-user"></i>
+ </span>
+ </div>
+ </div>
+ <div class="field">
+ <label for="" class="label">Password</label>
+ <div class="control has-icons-left">
+ <input id="password" name="password" type="password" placeholder="*******" class="input" required>
+ <span class="icon is-small is-left">
+ <i class="fa fa-lock"></i>
+ </span>
</div>
</div>
+ <div class="field">
+ <label for="" class="checkbox">
+ <input type="checkbox">
+ Remember me
+ </label>
+ </div>
+ <div class="field">
+ <button class="button is-success">
+ Log in
+ </button>
+ </div>
{% endblock %}
diff --git a/app/templates/user/register.html b/app/templates/user/register.html
index 6341671..26e5dd0 100644
--- a/app/templates/user/register.html
+++ b/app/templates/user/register.html
@@ -1,57 +1,38 @@
-{% extends 'base.html' %}
+{% extends 'base/form.html' %}
-{% block content %}
- <div class="register">
- <div class="form">
- <section class="hero is-primary is-fullheight-with-navbar">
- <div class="hero-body">
- <div class="container">
- <div class="columns is-centered">
- <div class="column is-5-tablet is-4-desktop is-3-widescreen">
- <h1 class="title is-2">Sign up</h1>
+{% block title %}Sign Up{% endblock %}
- <!-- TODO: render errors -->
-
- <form method="POST" class="box">
- {{ form.csrf_token }}
- <div class="field">
- <label for="" class="label">Username</label>
- <div class="control has-icons-left">
- <input id="username" name="username" type="text" placeholder="e.g. gymdude99" class="input" required>
- <span class="icon is-small is-left">
- <i class="fa fa-user"></i>
- </span>
- </div>
- </div>
- <div class="field">
- <label for="" class="label">Email</label>
- <div class="control has-icons-left">
- <input id="email" name="email" type="email" placeholder="e.g. bobsmith@gmail.com" class="input" required>
- <span class="icon is-small is-left">
- <i class="fa fa-envelope"></i>
- </span>
- </div>
- </div>
- <div class="field">
- <label for="" class="label">Password</label>
- <div class="control has-icons-left">
- <input id="password" name="password" type="password" placeholder="*******" class="input" required>
- <span class="icon is-small is-left">
- <i class="fa fa-lock"></i>
- </span>
- </div>
- </div>
- <div class="field">
- <button class="button is-success">
- Sign up
- </button>
- </div>
- </form>
- </div>
- </div>
- </div>
- </div>
- </section>
+{% block form %}
+ <div class="field">
+ <label for="" class="label">Username</label>
+ <div class="control has-icons-left">
+ <input id="username" name="username" type="text" placeholder="e.g. gymdude99" class="input" required>
+ <span class="icon is-small is-left">
+ <i class="fa fa-user"></i>
+ </span>
+ </div>
+ </div>
+ <div class="field">
+ <label for="" class="label">Email</label>
+ <div class="control has-icons-left">
+ <input id="email" name="email" type="email" placeholder="e.g. bobsmith@gmail.com" class="input" required>
+ <span class="icon is-small is-left">
+ <i class="fa fa-envelope"></i>
+ </span>
</div>
</div>
+ <div class="field">
+ <label for="" class="label">Password</label>
+ <div class="control has-icons-left">
+ <input id="password" name="password" type="password" placeholder="*******" class="input" required>
+ <span class="icon is-small is-left">
+ <i class="fa fa-lock"></i>
+ </span>
+ </div>
+ </div>
+ <div class="field">
+ <button class="button is-success">
+ Sign up
+ </button>
+ </div>
{% endblock %}