Files
TimeTracker/templates/errors/403.html
Dries Peeters 016fe5ead0 feat(ui): refresh templates and dashboards; improve admin and error pages
- Update global layout and styles: `app/templates/base.html`, `app/static/base.css`
- Modernize analytics dashboards (web + mobile)
- Revamp auth pages: login, profile, edit profile
- Refresh error pages: 400/403/404/500 and generic
- Polish main dashboard and search
- Enhance tasks views: create/edit/view, kanban, my/overdue
- Update clients, projects, invoices, and reports pages
- Refine timer pages (timer/edit/manual_entry)
- Tweak admin routes and templates
- Update license server util and integration docs
- Refresh README and help/about content

Notes:
- UI-focused changes; no database migrations included.
2025-09-12 10:03:40 +02:00

39 lines
1.7 KiB
HTML

{% extends "base.html" %}
{% block title %}{{ _('403 Forbidden') }} - {{ app_name }}{% endblock %}
{% block content %}
<div class="container mt-5">
<div class="row justify-content-center">
<div class="col-md-6">
<div class="card">
<div class="card-header bg-danger text-white">
<h4 class="mb-0">
<i class="fas fa-ban"></i> {{ _('403 Forbidden') }}
</h4>
</div>
<div class="card-body text-center">
<h5 class="card-title">{{ _('Access Denied') }}</h5>
<p class="card-text">
{{ _("You don't have permission to access this resource. This could be due to:") }}
</p>
<ul class="list-unstyled text-start">
<li><i class="fas fa-check text-success"></i> {{ _('Insufficient privileges') }}</li>
<li><i class="fas fa-check text-success"></i> {{ _('Not logged in') }}</li>
<li><i class="fas fa-check text-success"></i> {{ _('Resource access restrictions') }}</li>
</ul>
<div class="mt-4">
<a href="{{ url_for('main.dashboard') }}" class="btn btn-primary">
<i class="fas fa-home"></i> {{ _('Go to Dashboard') }}
</a>
<a href="{{ url_for('auth.login') }}" class="btn btn-secondary">
<i class="fas fa-sign-in-alt"></i> {{ _('Login') }}
</a>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}