mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-12-23 23:43:47 +00:00
Gestion igmp et mld par vlan
This commit is contained in:
parent
47ad76ed20
commit
5b76ac3afd
5 changed files with 52 additions and 3 deletions
|
@ -153,7 +153,8 @@ class VlanSerializer(NamespacedHMSerializer):
|
||||||
"""
|
"""
|
||||||
class Meta:
|
class Meta:
|
||||||
model = machines.Vlan
|
model = machines.Vlan
|
||||||
fields = ('vlan_id', 'name', 'comment', 'arp_protect', 'dhcp_snooping', 'dhcpv6_snooping', 'api_url')
|
fields = ('vlan_id', 'name', 'comment', 'arp_protect', 'dhcp_snooping',
|
||||||
|
'dhcpv6_snooping', 'igmp', 'mld', 'api_url')
|
||||||
|
|
||||||
|
|
||||||
class NasSerializer(NamespacedHMSerializer):
|
class NasSerializer(NamespacedHMSerializer):
|
||||||
|
|
|
@ -580,13 +580,24 @@ class VlanForm(FormRevMixin, ModelForm):
|
||||||
"""Ajout d'un vlan : id, nom"""
|
"""Ajout d'un vlan : id, nom"""
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Vlan
|
model = Vlan
|
||||||
fields = '__all__'
|
fields = ['vlan_id', 'name', 'comment']
|
||||||
|
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
prefix = kwargs.pop('prefix', self.Meta.model.__name__)
|
prefix = kwargs.pop('prefix', self.Meta.model.__name__)
|
||||||
super(VlanForm, self).__init__(*args, prefix=prefix, **kwargs)
|
super(VlanForm, self).__init__(*args, prefix=prefix, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
class EditOptionVlanForm(FormRevMixin, ModelForm):
|
||||||
|
"""Ajout d'un vlan : id, nom"""
|
||||||
|
class Meta:
|
||||||
|
model = Vlan
|
||||||
|
fields = ['dhcp_snooping', 'dhcpv6_snooping', 'arp_protect', 'igmp', 'mld']
|
||||||
|
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
prefix = kwargs.pop('prefix', self.Meta.model.__name__)
|
||||||
|
super(EditOptionVlanForm, self).__init__(*args, prefix=prefix, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
class DelVlanForm(FormRevMixin, Form):
|
class DelVlanForm(FormRevMixin, Form):
|
||||||
"""Suppression d'un ou plusieurs vlans"""
|
"""Suppression d'un ou plusieurs vlans"""
|
||||||
vlan = forms.ModelMultipleChoiceField(
|
vlan = forms.ModelMultipleChoiceField(
|
||||||
|
|
25
machines/migrations/0092_auto_20180708_2018.py
Normal file
25
machines/migrations/0092_auto_20180708_2018.py
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.10.7 on 2018-07-08 18:18
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('machines', '0091_auto_20180707_2040'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='vlan',
|
||||||
|
name='igmp',
|
||||||
|
field=models.BooleanField(default=False, help_text='Gestion multicast v4'),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='vlan',
|
||||||
|
name='mld',
|
||||||
|
field=models.BooleanField(default=False, help_text='Gestion multicast v6'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -502,7 +502,15 @@ class Vlan(RevMixin, AclMixin, models.Model):
|
||||||
arp_protect = models.BooleanField(default=False)
|
arp_protect = models.BooleanField(default=False)
|
||||||
dhcp_snooping = models.BooleanField(default=False)
|
dhcp_snooping = models.BooleanField(default=False)
|
||||||
dhcpv6_snooping = models.BooleanField(default=False)
|
dhcpv6_snooping = models.BooleanField(default=False)
|
||||||
|
igmp = models.BooleanField(
|
||||||
|
default=False,
|
||||||
|
help_text="Gestion multicast v4"
|
||||||
|
)
|
||||||
|
mld = models.BooleanField(
|
||||||
|
default=False,
|
||||||
|
help_text="Gestion multicast v6"
|
||||||
|
)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
permissions = (
|
permissions = (
|
||||||
("view_vlan", "Peut voir un objet vlan"),
|
("view_vlan", "Peut voir un objet vlan"),
|
||||||
|
|
|
@ -33,6 +33,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
<th>Arp Protect</th>
|
<th>Arp Protect</th>
|
||||||
<th>Dhcp Snooping</th>
|
<th>Dhcp Snooping</th>
|
||||||
<th>Dhcpv6 Snooping</th>
|
<th>Dhcpv6 Snooping</th>
|
||||||
|
<th>Igmp</th>
|
||||||
|
<th>Mld</th>
|
||||||
<th></th>
|
<th></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
@ -43,6 +45,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
<td>{{ vlan.arp_protect }}</td>
|
<td>{{ vlan.arp_protect }}</td>
|
||||||
<td>{{ vlan.dhcp_snooping }}</td>
|
<td>{{ vlan.dhcp_snooping }}</td>
|
||||||
<td>{{ vlan.dhcpv6_snooping }}</td>
|
<td>{{ vlan.dhcpv6_snooping }}</td>
|
||||||
|
<td>{{ vlan.igmp }}</td>
|
||||||
|
<td>{{ vlan.mld }}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{% can_edit vlan %}
|
{% can_edit vlan %}
|
||||||
{% include 'buttons/edit.html' with href='topologie:edit-vlanoptions' id=vlan.id %}
|
{% include 'buttons/edit.html' with href='topologie:edit-vlanoptions' id=vlan.id %}
|
||||||
|
|
Loading…
Reference in a new issue