mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-12-26 08:53:46 +00:00
Affichage basique des configurations de ports disponibles.
This commit is contained in:
parent
80b3ac3420
commit
100087640a
5 changed files with 59 additions and 4 deletions
|
@ -415,6 +415,12 @@ class PortList(models.Model):
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return ', '.join(map(str, self.port_set.all()))
|
return ', '.join(map(str, self.port_set.all()))
|
||||||
|
|
||||||
|
def tcp_ports(self):
|
||||||
|
return self.port_set.filter(protocole=Port.TCP)
|
||||||
|
|
||||||
|
def udp_ports(self):
|
||||||
|
return self.port_set.filter(protocole=Port.UDP)
|
||||||
|
|
||||||
class Port(models.Model):
|
class Port(models.Model):
|
||||||
"""
|
"""
|
||||||
Représente un simple port ou une plage de ports.
|
Représente un simple port ou une plage de ports.
|
||||||
|
@ -437,10 +443,9 @@ class Port(models.Model):
|
||||||
)
|
)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
beg = self.protocole + ' : '
|
|
||||||
if self.begin == self.end :
|
if self.begin == self.end :
|
||||||
return beg + str(self.begin)
|
return str(self.begin)
|
||||||
return beg + '-'.join([str(self.begin), str(self.end)])
|
return '-'.join([str(self.begin), str(self.end)])
|
||||||
|
|
||||||
|
|
||||||
@receiver(post_save, sender=Machine)
|
@receiver(post_save, sender=Machine)
|
||||||
|
|
37
machines/templates/machines/index_portlist.html
Normal file
37
machines/templates/machines/index_portlist.html
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
{% extends "machines/sidebar.html" %}
|
||||||
|
|
||||||
|
{% load bootstrap3 %}
|
||||||
|
|
||||||
|
{% block title %}Configuration de ports{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<h2>Liste des configurations de ports</h2>
|
||||||
|
<a class="btn btn-primary btn-sm" role="button" href="#"><i class="glyphicon glyphicon-plus"></i>Ajouter une configuration</a>
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Nom</th>
|
||||||
|
<th>TCP</th>
|
||||||
|
<th>UDP</th>
|
||||||
|
<th></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
{% for pl in port_list %}
|
||||||
|
<tr>
|
||||||
|
<td>{{pl.name}}</td>
|
||||||
|
<td>{{pl.tcp_ports}}</td>
|
||||||
|
<td>{{pl.udp_ports}}</td>
|
||||||
|
<td class="text-right">
|
||||||
|
{%comment%}
|
||||||
|
{% include 'buttons/suppr.html' href='machines:del-portlist' id=pl.id %}
|
||||||
|
{% include 'buttons/edit.html' href='machines:edit-portlist' id=pl.id %}
|
||||||
|
{%endcomment%}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{%endfor%}
|
||||||
|
</table>
|
||||||
|
<br />
|
||||||
|
<br />
|
||||||
|
<br />
|
||||||
|
|
||||||
|
{% endblock %}
|
|
@ -55,4 +55,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
Services (dhcp, dns...)
|
Services (dhcp, dns...)
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if is_bureau %}
|
||||||
|
<a class="list-group-item list-group-item-info" href="{% url "machines:index-portlist" %}">
|
||||||
|
<i class="glyphicon glyphicon-list"></i>
|
||||||
|
Configuration de ports
|
||||||
|
</a>
|
||||||
|
{%endif%}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
@ -92,4 +92,5 @@ urlpatterns = [
|
||||||
url(r'^rest/text/$', views.text, name='text'),
|
url(r'^rest/text/$', views.text, name='text'),
|
||||||
url(r'^rest/zones/$', views.zones, name='zones'),
|
url(r'^rest/zones/$', views.zones, name='zones'),
|
||||||
url(r'^rest/service_servers/$', views.service_servers, name='service-servers'),
|
url(r'^rest/service_servers/$', views.service_servers, name='service-servers'),
|
||||||
|
url(r'index_portlist/$', views.index_portlist, name='index-portlist'),
|
||||||
]
|
]
|
||||||
|
|
|
@ -48,7 +48,7 @@ from reversion.models import Version
|
||||||
import re
|
import re
|
||||||
from .forms import NewMachineForm, EditMachineForm, EditInterfaceForm, AddInterfaceForm, MachineTypeForm, DelMachineTypeForm, ExtensionForm, DelExtensionForm, BaseEditInterfaceForm, BaseEditMachineForm
|
from .forms import NewMachineForm, EditMachineForm, EditInterfaceForm, AddInterfaceForm, MachineTypeForm, DelMachineTypeForm, ExtensionForm, DelExtensionForm, BaseEditInterfaceForm, BaseEditMachineForm
|
||||||
from .forms import EditIpTypeForm, IpTypeForm, DelIpTypeForm, DomainForm, AliasForm, DelAliasForm, NsForm, DelNsForm, TextForm, DelTextForm, MxForm, DelMxForm, VlanForm, DelVlanForm, ServiceForm, DelServiceForm, NasForm, DelNasForm
|
from .forms import EditIpTypeForm, IpTypeForm, DelIpTypeForm, DomainForm, AliasForm, DelAliasForm, NsForm, DelNsForm, TextForm, DelTextForm, MxForm, DelMxForm, VlanForm, DelVlanForm, ServiceForm, DelServiceForm, NasForm, DelNasForm
|
||||||
from .models import IpType, Machine, Interface, IpList, MachineType, Extension, Mx, Ns, Domain, Service, Service_link, Vlan, Nas, Text
|
from .models import IpType, Machine, Interface, IpList, MachineType, Extension, Mx, Ns, Domain, Service, Service_link, Vlan, Nas, Text, PortList
|
||||||
from users.models import User
|
from users.models import User
|
||||||
from users.models import all_has_access
|
from users.models import all_has_access
|
||||||
from preferences.models import GeneralOption, OptionalMachine
|
from preferences.models import GeneralOption, OptionalMachine
|
||||||
|
@ -912,6 +912,12 @@ def history(request, object, id):
|
||||||
return render(request, 're2o/history.html', {'reversions': reversions, 'object': object_instance})
|
return render(request, 're2o/history.html', {'reversions': reversions, 'object': object_instance})
|
||||||
|
|
||||||
|
|
||||||
|
@login_required
|
||||||
|
@permission_required('bureau')
|
||||||
|
def index_portlist(request):
|
||||||
|
port_list = PortList.objects.all().order_by('name')
|
||||||
|
return render(request, "machines/index_portlist.html", {'port_list':port_list})
|
||||||
|
|
||||||
""" Framework Rest """
|
""" Framework Rest """
|
||||||
|
|
||||||
class JSONResponse(HttpResponse):
|
class JSONResponse(HttpResponse):
|
||||||
|
|
Loading…
Reference in a new issue