James Valleroy 0614b5e509
wireguard: Update functional tests to handle Start Server button
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-01-21 20:47:21 -05:00

133 lines
3.9 KiB
HTML

{% extends "app.html" %}
{% comment %}
# SPDX-License-Identifier: AGPL-3.0-or-later
{% endcomment %}
{% load bootstrap %}
{% load i18n %}
{% block configuration %}
<h3>{% trans "As a Server" %}</h3>
<p>{% trans "Peers allowed to connect to this server:" %}</p>
<div class="table-responsive">
<table class="table" id="server-peers-list">
<tr>
<th>{% trans "Public Key" %}</th>
<th>{% trans "Allowed IPs" %}</th>
<th>{% trans "Last Connected Time" %}</th>
</tr>
{% if server.peers %}
{% for peer in server.peers.values %}
{% if peer.public_key %}
<tr>
<td>
<a href="{% url 'wireguard:show-client' peer.public_key|urlencode:'' %}">
{{ peer.public_key }}
</a>
</td>
<td>{{ peer.allowed_ips|join:", " }}</td>
<td>{{ peer.status.latest_handshake|default:'' }}</td>
</tr>
{% endif %}
{% endfor %}
{% else %}
<tr>
<td colspan="3">
{% blocktrans trimmed %}
No peers configured to connect to this {{ box_name }} yet.
{% endblocktrans %}
</td>
</tr>
{% endif %}
</table>
</div>
<p>
{% blocktrans trimmed %}
Public key for this {{ box_name }}:
{% endblocktrans %}
{% if server.public_key %}
<pre>{{ server.public_key }}</pre>
{% else %}
<p>{% trans "Not configured yet." %}</p>
{% endif %}
</p>
<div class="btn-toolbar">
{% if not server.public_key %}
<form method="post" action="{% url 'wireguard:enable-server' %}">
{% csrf_token %}
<button type="submit" class="btn btn-primary btn-start-server"
title="{% trans 'Start WireGuard Server' %}">
<span class="fa fa-rocket" aria-hidden="true"></span>
{% trans "Start WireGuard Server" %}
</button>
</form>
{% else %}
<a title="{% trans 'Add a new peer' %}"
role="button" class="btn btn-default btn-add-client"
href="{% url 'wireguard:add-client' %}">
<span class="fa fa-plus" aria-hidden="true"></span>
{% trans "Add Allowed Client" %}
</a>
{% endif %}
</div>
<h3>{% trans "As a Client" %}</h3>
<p>
{% blocktrans trimmed %}
Servers that {{ box_name }} will connect to:
{% endblocktrans %}
</p>
<div class="table-responsive">
<table class="table" id="client-peers-list">
<tr>
<th>{% trans "Endpoint" %}</th>
<th>{% trans "Public Key" %}</th>
<th>{% trans "Last Connected Time" %}</th>
</tr>
{% if client_peers %}
{% for interface, server in client_peers.items %}
{% for peer in server.peers.values %}
{% if forloop.first %}
<tr>
<td class="peer-endpoint">{{ peer.endpoint }}</td>
<td class="peer-public-key"
data-public-key="{{ peer.public_key }}">
<a href="{% url 'wireguard:show-server' interface %}">
{{ peer.public_key }}
</a>
</td>
<td>{{ peer.status.latest_handshake|default:'' }}</td>
</tr>
{% endif %}
{% endfor %}
{% endfor %}
{% else %}
<tr>
<td colspan="4">
{% blocktrans trimmed %}
No connections to remote servers are configured yet.
{% endblocktrans %}
</td>
</tr>
{% endif %}
</table>
</div>
<div class="btn-toolbar">
<a title="{% trans 'Add a new server' %}"
role="button" class="btn btn-default btn-add-server"
href="{% url 'wireguard:add-server' %}">
<span class="fa fa-plus" aria-hidden="true"></span>
{% trans "Add Connection to Server" %}
</a>
</div>
{{ block.super }}
{% endblock %}