05/06/2026 Initial commit

This commit is contained in:
2026-05-06 14:19:07 -04:00
parent 9da1dffd9a
commit dde18a2cd2
116 changed files with 4276 additions and 7 deletions
+10
View File
@@ -0,0 +1,10 @@
{% extends "tenant/base.html" %}
{% block title %}Account Cancelled{% endblock %}
{% block content %}
<div class="row justify-content-center mt-5">
<div class="col-md-5 text-center">
<h3 class="text-danger">Account Cancelled</h3>
<p class="text-muted">This account has been cancelled. Please contact support if you believe this is an error.</p>
</div>
</div>
{% endblock %}
+34
View File
@@ -0,0 +1,34 @@
{% extends "tenant/base.html" %}
{% block title %}Sign In{% endblock %}
{% block content %}
<div class="row justify-content-center">
<div class="col-md-4">
<div class="card shadow-sm mt-5">
<div class="card-body p-4">
<h4 class="card-title mb-4 text-center">Salon Login</h4>
{% if error %}
<div class="alert alert-danger">{{ error }}</div>
{% endif %}
<form method="POST" action="{{ url_for('tenant_auth.login') }}">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
<div class="mb-3">
<label class="form-label">Email</label>
<input type="email" name="email" class="form-control" required autofocus>
</div>
<div class="mb-3">
<label class="form-label">Password</label>
<input type="password" name="password" class="form-control" required>
</div>
<button type="submit" class="btn btn-primary w-100">Sign In</button>
</form>
<hr>
<div class="text-center small">
<a href="{{ url_for('tenant_auth.password_reset_request') }}">Forgot password?</a>
&nbsp;|&nbsp;
<a href="{{ url_for('staff_auth.staff_login') }}">Staff login</a>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
@@ -0,0 +1,29 @@
{% extends "tenant/base.html" %}
{% block title %}Set New Password{% endblock %}
{% block content %}
<div class="row justify-content-center">
<div class="col-md-4">
<div class="card shadow-sm mt-5">
<div class="card-body p-4">
<h5 class="card-title mb-3">Set New Password</h5>
{% if error %}
<div class="alert alert-danger">{{ error }}</div>
{% endif %}
<form method="POST">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
<div class="mb-3">
<label class="form-label">New Password</label>
<input type="password" name="password" class="form-control" required minlength="10">
<div class="form-text">Min 10 chars, must include uppercase, lowercase, and a digit.</div>
</div>
<div class="mb-3">
<label class="form-label">Confirm Password</label>
<input type="password" name="confirm_password" class="form-control" required>
</div>
<button type="submit" class="btn btn-primary w-100">Update Password</button>
</form>
</div>
</div>
</div>
</div>
{% endblock %}
@@ -0,0 +1,28 @@
{% extends "tenant/base.html" %}
{% block title %}Reset Password{% endblock %}
{% block content %}
<div class="row justify-content-center">
<div class="col-md-4">
<div class="card shadow-sm mt-5">
<div class="card-body p-4">
<h5 class="card-title mb-3">Reset Password</h5>
{% if message %}
<div class="alert alert-info">{{ message }}</div>
{% else %}
<form method="POST">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
<div class="mb-3">
<label class="form-label">Email address</label>
<input type="email" name="email" class="form-control" required autofocus>
</div>
<button type="submit" class="btn btn-primary w-100">Send Reset Link</button>
</form>
{% endif %}
<div class="text-center mt-3 small">
<a href="{{ url_for('tenant_auth.login') }}">Back to login</a>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
+11
View File
@@ -0,0 +1,11 @@
{% extends "tenant/base.html" %}
{% block title %}Account Suspended{% endblock %}
{% block content %}
<div class="row justify-content-center mt-5">
<div class="col-md-5 text-center">
<h3 class="text-warning">Account Suspended</h3>
<p class="text-muted">Your salon account has been suspended. Please contact support to resolve your billing.</p>
<a href="{{ url_for('tenant_auth.login') }}" class="btn btn-outline-secondary mt-2">Back to Login</a>
</div>
</div>
{% endblock %}