Files
meshcore-bot/modules/web_viewer/templates/error.html
T
Stacy Olivas a15827be8f usability: API Explorer tab, actionable error messages (USE-05, USE-06)
- USE-05: Add /api-explorer page listing all ~65 API endpoints in 9
  categories (System, Contacts, Mesh, Channels, Feeds, Radio, Admin,
  Maintenance, Config, Greeter) with method badges, descriptions, and
  curl example modal. Filter bar and collapse per section. Nav item
  added to base.html.

- USE-06: Three targeted error-message improvements:
  1. 500 handler now returns user-friendly HTML page (error.html) for
     browser requests and sanitized JSON for API/JSON requests instead
     of a bare string.
  2. Feed processed-items query failures promoted from logger.debug to
     logger.warning so operators see them in normal log output.
  3. Global JS fetch interceptor in base.html redirects to /login?next=
     on any 401 response, handling session expiry mid-page.

- Fix pre-existing test bug: test_reload_endpoint_success mock return
  value did not match actual code message from reload_config.
2026-04-16 18:33:40 -07:00

21 lines
712 B
HTML

{% extends "base.html" %}
{% block title %}{{ error_code }} {{ error_title }} — MeshCore Bot{% endblock %}
{% block content %}
<div class="row justify-content-center mt-5">
<div class="col-md-6 text-center">
<div class="card shadow-sm">
<div class="card-body py-5">
<h1 class="display-1 fw-bold text-danger">{{ error_code }}</h1>
<h2 class="h4 mb-3">{{ error_title }}</h2>
<p class="text-muted mb-4">{{ error_message }}</p>
<a href="/" class="btn btn-primary">
<i class="fas fa-home me-1"></i> Back to Dashboard
</a>
</div>
</div>
</div>
</div>
{% endblock %}