Files
gandalf/templates/index.html
2025-02-08 00:32:25 -05:00

69 lines
2.9 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>GANDALF - Network Monitor</title>
<link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap" rel="stylesheet">
</head>
<body>
<div class="container">
<div class="header">
<h1>GANDALF (Global Advanced Network Detection And Link Facilitator)</h1>
<p>Ubiquiti Network Management Dashboard</p>
</div>
<div class="metrics-container">
<div class="metric-card">
<h2>Network Overview</h2>
<div id="network-health">
{%- for device in devices %}
<div class="device-status" data-device-name="{{ device.name }}">
<span class="status-indicator"></span>
<div class="device-info">
<span class="device-name">{{ device.name }}</span>
<span class="device-details">{{ device.ip }}</span>
<span class="device-type">{{ device.type }} ({{ device.connection_type }})</span>
{% if device.critical %}
<span class="critical-badge">Critical</span>
{% endif %}
</div>
</div>
{%- endfor %}
</div>
</div>
<div class="metric-card expandable">
<h2>Interface Status</h2>
<div id="interface-details">
{%- for device in devices %}
<div class="interface-group" data-device-name="{{ device.name }}">
<div class="interface-header" onclick="toggleInterfaces(this)">
<h3>{{ device.name }}</h3>
<span class="expand-icon"></span>
</div>
<div class="interface-list collapsed"></div>
</div>
{%- endfor %}
</div>
</div>
<div class="metric-card">
<h2>System Health</h2>
<div id="system-metrics">
{%- for device in devices %}
<div class="health-metrics" data-device-name="{{ device.name }}">
<h3>{{ device.name }}</h3>
<div class="metrics-list">
<div class="metric-item cpu"></div>
<div class="metric-item memory"></div>
<div class="metric-item temperature"></div>
</div>
</div>
{%- endfor %}
</div>
</div>
</div>
</div>
<script src="{{ url_for('static', filename='app.js') }}"></script>
</body>
</html>