improve wireguard manage instance

This commit is contained in:
Eduardo Silva
2026-01-25 10:45:16 -03:00
parent 9fca7de4ce
commit 630adc762b
2 changed files with 5 additions and 16 deletions

View File

@@ -6,19 +6,6 @@
<div class="card card-primary card-outline"> <div class="card card-primary card-outline">
<div class="card-body"> <div class="card-body">
<ul class="nav nav-tabs" role="tablist">
{% for wgconf in wireguard_instances %}
<li class="nav-item">
<a class="nav-link {%if wgconf == current_instance%}active{%endif%}" href="/server/manage/?uuid={{wgconf.uuid}}" role="tab" >
wg{{wgconf.instance_id}} {%if wgconf.name %}({{wgconf.name}}){%endif%}
</a>
</li>
{% endfor %}
<li class="nav-item">
<a class="nav-link {%if not current_instance%}active{%endif%}" href="/server/manage/?action=create" role="tab" >{% trans 'Create Instance' %}</a>
</li>
</ul>
<div class="tab-content" id="custom-content-below-tabContent"> <div class="tab-content" id="custom-content-below-tabContent">
<div class="tab-pane fade show active" id="custom-content-below-home" role="tabpanel" aria-labelledby="custom-content-below-home-tab"> <div class="tab-pane fade show active" id="custom-content-below-home" role="tabpanel" aria-labelledby="custom-content-below-home-tab">
<form method="post"> <form method="post">
@@ -128,6 +115,7 @@
<div class="card-footer"> <div class="card-footer">
<button type="submit" class="btn btn-primary">{% trans 'Save' %}</button> <button type="submit" class="btn btn-primary">{% trans 'Save' %}</button>
{% if current_instance.uuid %} {% if current_instance.uuid %}
<a href="{% url 'wireguard_server_list' %}" class='btn btn-outline-secondary' >{% trans 'Back' %}</a>
<a href='javascript:void(0)' class='btn btn-outline-danger' data-command='delete' onclick='openCommandDialog(this)'>{% trans 'Delete Configuration' %}</a> <a href='javascript:void(0)' class='btn btn-outline-danger' data-command='delete' onclick='openCommandDialog(this)'>{% trans 'Delete Configuration' %}</a>
{% endif %} {% endif %}
</div> </div>

View File

@@ -4,7 +4,7 @@ from django.conf import settings
from django.contrib import messages from django.contrib import messages
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.db import models from django.db import models
from django.shortcuts import get_object_or_404, redirect, render from django.shortcuts import get_object_or_404, redirect, render, Http404
from django.utils.translation import gettext as _ from django.utils.translation import gettext as _
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
@@ -124,7 +124,8 @@ def view_wireguard_manage_instance(request):
if request.GET.get('action') == 'create': if request.GET.get('action') == 'create':
current_instance = None current_instance = None
else: else:
current_instance = wireguard_instances.first() raise Http404
if current_instance: if current_instance:
page_title = f'wg{current_instance.instance_id}' page_title = f'wg{current_instance.instance_id}'
message_title = _('Update WireGuard Instance') message_title = _('Update WireGuard Instance')
@@ -154,7 +155,7 @@ def view_wireguard_manage_instance(request):
this_form.pending_changes = True this_form.pending_changes = True
this_form.save() this_form.save()
messages.success(request, message_title + '|WireGuard instance updated: wg' + str(form.instance.instance_id)) messages.success(request, message_title + '|WireGuard instance updated: wg' + str(form.instance.instance_id))
return redirect('/server/manage/?uuid=' + str(form.instance.uuid)) return redirect('/server/detail/?uuid=' + str(form.instance.uuid))
else: else:
if not current_instance: if not current_instance:
form = WireGuardInstanceForm(initial=generate_instance_defaults()) form = WireGuardInstanceForm(initial=generate_instance_defaults())