diff --git a/netbox/dcim/constants.py b/netbox/dcim/constants.py index 7b11028d4..07078525c 100644 --- a/netbox/dcim/constants.py +++ b/netbox/dcim/constants.py @@ -284,7 +284,7 @@ CONNECTION_STATUS_CHOICES = [ ] # Cable endpoint types -CABLE_ENDPOINT_TYPES = [ +CABLE_TERMINATION_TYPES = [ 'consoleport', 'consoleserverport', 'interface', 'poweroutlet', 'powerport', 'frontpanelport', 'rearpanelport', ] @@ -297,7 +297,7 @@ CABLE_TYPE_CHOICES = ( (CABLE_TYPE_FIBER, 'Fiber'), ) -CABLE_ENDPOINT_TYPE_CHOICES = { +CABLE_TERMINATION_TYPE_CHOICES = { # (API endpoint, human-friendly name) 'consoleport': ('console-ports', 'Console port'), 'consoleserverport': ('console-server-ports', 'Console server port'), @@ -308,7 +308,7 @@ CABLE_ENDPOINT_TYPE_CHOICES = { 'rearpanelport': ('rear-panel-ports', 'Rear panel port'), } -COMPATIBLE_ENDPOINT_TYPES = { +COMPATIBLE_TERMINATION_TYPES = { 'consoleport': ['consoleserverport', 'frontpanelport', 'rearpanelport'], 'consoleserverport': ['consoleport', 'frontpanelport', 'rearpanelport'], 'powerport': ['poweroutlet'], diff --git a/netbox/dcim/forms.py b/netbox/dcim/forms.py index fd31bb1bf..e0e65aa3a 100644 --- a/netbox/dcim/forms.py +++ b/netbox/dcim/forms.py @@ -2137,38 +2137,38 @@ class RearPanelPortBulkRenameForm(BulkRenameForm): # class CableForm(BootstrapMixin, ChainedFieldsMixin, forms.ModelForm): - endpoint_b_site = forms.ModelChoiceField( + termination_b_site = forms.ModelChoiceField( queryset=Site.objects.all(), label='Site', required=False, widget=forms.Select( - attrs={'filter-for': 'endpoint_b_rack'} + attrs={'filter-for': 'termination_b_rack'} ) ) - endpoint_b_rack = ChainedModelChoiceField( + termination_b_rack = ChainedModelChoiceField( queryset=Rack.objects.all(), chains=( - ('site', 'endpoint_b_site'), + ('site', 'termination_b_site'), ), label='Rack', required=False, widget=APISelect( - api_url='/api/dcim/racks/?site_id={{endpoint_b_site}}', - attrs={'filter-for': 'endpoint_b_device', 'nullable': 'true'} + api_url='/api/dcim/racks/?site_id={{termination_b_site}}', + attrs={'filter-for': 'termination_b_device', 'nullable': 'true'} ) ) - endpoint_b_device = ChainedModelChoiceField( + termination_b_device = ChainedModelChoiceField( queryset=Device.objects.all(), chains=( - ('site', 'endpoint_b_site'), - ('rack', 'endpoint_b_rack'), + ('site', 'termination_b_site'), + ('rack', 'termination_b_rack'), ), label='Device', required=False, widget=APISelect( - api_url='/api/dcim/devices/?site_id={{endpoint_b_site}}&rack_id={{endpoint_b_rack}}', + api_url='/api/dcim/devices/?site_id={termination_b_site}}&rack_id={{termination_b_rack}}', display_field='display_name', - attrs={'filter-for': 'endpoint_b_id'} + attrs={'filter-for': 'termination_b_id'} ) ) livesearch = forms.CharField( @@ -2177,20 +2177,20 @@ class CableForm(BootstrapMixin, ChainedFieldsMixin, forms.ModelForm): widget=Livesearch( query_key='q', query_url='dcim-api:device-list', - field_to_update='endpoint_b_device' + field_to_update='termination_b_device' ) ) - endpoint_b_type = forms.ModelChoiceField( + termination_b_type = forms.ModelChoiceField( queryset=ContentType.objects.all(), label='Type', widget=ContentTypeSelect( - attrs={'filter-for': 'endpoint_b_id'} + attrs={'filter-for': 'termination_b_id'} ) ) - endpoint_b_id = forms.IntegerField( + termination_b_id = forms.IntegerField( label='Name', widget=APISelect( - api_url='/api/dcim/{{endpoint_b_type}}s/?device_id={{endpoint_b_device}}', + api_url='/api/dcim/{{termination_b_type}}s/?device_id={{termination_b_device}}', disabled_indicator='is_connected' ) ) @@ -2198,17 +2198,17 @@ class CableForm(BootstrapMixin, ChainedFieldsMixin, forms.ModelForm): class Meta: model = Cable fields = [ - 'endpoint_b_site', 'endpoint_b_rack', 'endpoint_b_device', 'livesearch', 'endpoint_b_type', - 'endpoint_b_id', 'status', 'label', + 'termination_b_site', 'termination_b_rack', 'termination_b_device', 'livesearch', 'termination_b_type', + 'termination_b_id', 'status', 'label', ] def __init__(self, *args, **kwargs): super(CableForm, self).__init__(*args, **kwargs) # Define available types for endpoint B based on the type of endpoint A - endpoint_a_type = self.instance.endpoint_a._meta.model_name - self.fields['endpoint_b_type'].queryset = ContentType.objects.filter( - model__in=COMPATIBLE_ENDPOINT_TYPES.get(endpoint_a_type) + termination_a_type = self.instance.termination_a._meta.model_name + self.fields['termination_b_type'].queryset = ContentType.objects.filter( + model__in=COMPATIBLE_TERMINATION_TYPES.get(termination_a_type) ) diff --git a/netbox/dcim/migrations/0066_cables.py b/netbox/dcim/migrations/0066_cables.py index ce16c4a93..7865be358 100644 --- a/netbox/dcim/migrations/0066_cables.py +++ b/netbox/dcim/migrations/0066_cables.py @@ -21,14 +21,14 @@ def console_connections_to_cables(apps, schema_editor): for consoleport in ConsolePort.objects.filter(connected_endpoint__isnull=False): c = Cable() # We have to assign GFK fields manually because we're inside a migration. - c.endpoint_a_type = consoleport_type - c.endpoint_a_id = consoleport.id - c.endpoint_b_type = consoleserverport_type - c.endpoint_b_id = consoleport.connected_endpoint_id + c.termination_a_type = consoleport_type + c.termination_a_id = consoleport.id + c.termination_b_type = consoleserverport_type + c.termination_b_id = consoleport.connected_endpoint_id c.connection_status = consoleport.connection_status c.save() - cable_count = Cable.objects.filter(endpoint_a_type=consoleport_type).count() + cable_count = Cable.objects.filter(termination_a_type=consoleport_type).count() print("{} cables created".format(cable_count)) @@ -50,14 +50,14 @@ def power_connections_to_cables(apps, schema_editor): for powerport in PowerPort.objects.filter(connected_endpoint__isnull=False): c = Cable() # We have to assign GFK fields manually because we're inside a migration. - c.endpoint_a_type = powerport_type - c.endpoint_a_id = powerport.id - c.endpoint_b_type = poweroutlet_type - c.endpoint_b_id = powerport.connected_endpoint_id + c.termination_a_type = powerport_type + c.termination_a_id = powerport.id + c.termination_b_type = poweroutlet_type + c.termination_b_id = powerport.connected_endpoint_id c.connection_status = powerport.connection_status c.save() - cable_count = Cable.objects.filter(endpoint_a_type=powerport_type).count() + cable_count = Cable.objects.filter(termination_a_type=powerport_type).count() print("{} cables created".format(cable_count)) @@ -78,10 +78,10 @@ def interface_connections_to_cables(apps, schema_editor): for conn in InterfaceConnection.objects.all(): c = Cable() # We have to assign GFK fields manually because we're inside a migration. - c.endpoint_a_type = interface_type - c.endpoint_a_id = conn.interface_a_id - c.endpoint_b_type = interface_type - c.endpoint_b_id = conn.interface_b_id + c.termination_a_type = interface_type + c.termination_a_id = conn.interface_a_id + c.termination_b_type = interface_type + c.termination_b_id = conn.interface_b_id c.connection_status = conn.connection_status c.save() @@ -96,7 +96,7 @@ def interface_connections_to_cables(apps, schema_editor): connection_status=conn.connection_status ) - cable_count = Cable.objects.filter(endpoint_a_type=interface_type).count() + cable_count = Cable.objects.filter(termination_a_type=interface_type).count() print("{} cables created".format(cable_count)) @@ -117,19 +117,19 @@ class Migration(migrations.Migration): ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False)), ('created', models.DateField(auto_now_add=True, null=True)), ('last_updated', models.DateTimeField(auto_now=True, null=True)), - ('endpoint_a_id', models.PositiveIntegerField()), - ('endpoint_b_id', models.PositiveIntegerField()), + ('termination_a_id', models.PositiveIntegerField()), + ('termination_b_id', models.PositiveIntegerField()), ('type', models.PositiveSmallIntegerField(blank=True, null=True)), ('status', models.BooleanField(default=True)), ('label', models.CharField(blank=True, max_length=100)), ('color', utilities.fields.ColorField(blank=True, max_length=6)), - ('endpoint_a_type', models.ForeignKey(limit_choices_to={'model__in': ['consoleport', 'consoleserverport', 'interface', 'poweroutlet', 'powerport', 'frontpanelport', 'rearpanelport']}, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='contenttypes.ContentType')), - ('endpoint_b_type', models.ForeignKey(limit_choices_to={'model__in': ['consoleport', 'consoleserverport', 'interface', 'poweroutlet', 'powerport', 'frontpanelport', 'rearpanelport']}, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='contenttypes.ContentType')), + ('termination_a_type', models.ForeignKey(limit_choices_to={'model__in': ['consoleport', 'consoleserverport', 'interface', 'poweroutlet', 'powerport', 'frontpanelport', 'rearpanelport']}, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='contenttypes.ContentType')), + ('termination_b_type', models.ForeignKey(limit_choices_to={'model__in': ['consoleport', 'consoleserverport', 'interface', 'poweroutlet', 'powerport', 'frontpanelport', 'rearpanelport']}, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='contenttypes.ContentType')), ], ), migrations.AlterUniqueTogether( name='cable', - unique_together={('endpoint_b_type', 'endpoint_b_id'), ('endpoint_a_type', 'endpoint_a_id')}, + unique_together={('termination_b_type', 'termination_b_id'), ('termination_a_type', 'termination_a_id')}, ), # Alter console port models diff --git a/netbox/dcim/models.py b/netbox/dcim/models.py index d69718013..8da7c102b 100644 --- a/netbox/dcim/models.py +++ b/netbox/dcim/models.py @@ -2327,27 +2327,27 @@ class Cable(ChangeLoggedModel): """ A physical connection between two endpoints. """ - endpoint_a_type = models.ForeignKey( + termination_a_type = models.ForeignKey( to=ContentType, - limit_choices_to={'model__in': CABLE_ENDPOINT_TYPES}, + limit_choices_to={'model__in': CABLE_TERMINATION_TYPES}, on_delete=models.PROTECT, related_name='+' ) - endpoint_a_id = models.PositiveIntegerField() - endpoint_a = GenericForeignKey( - ct_field='endpoint_a_type', - fk_field='endpoint_a_id' + termination_a_id = models.PositiveIntegerField() + termination_a = GenericForeignKey( + ct_field='termination_a_type', + fk_field='termination_a_id' ) - endpoint_b_type = models.ForeignKey( + termination_b_type = models.ForeignKey( to=ContentType, - limit_choices_to={'model__in': CABLE_ENDPOINT_TYPES}, + limit_choices_to={'model__in': CABLE_TERMINATION_TYPES}, on_delete=models.PROTECT, related_name='+' ) - endpoint_b_id = models.PositiveIntegerField() - endpoint_b = GenericForeignKey( - ct_field='endpoint_b_type', - fk_field='endpoint_b_id' + termination_b_id = models.PositiveIntegerField() + termination_b = GenericForeignKey( + ct_field='termination_b_type', + fk_field='termination_b_id' ) type = models.PositiveSmallIntegerField( choices=CABLE_TYPE_CHOICES, @@ -2368,8 +2368,8 @@ class Cable(ChangeLoggedModel): class Meta: unique_together = ( - ('endpoint_a_type', 'endpoint_a_id'), - ('endpoint_b_type', 'endpoint_b_id'), + ('termination_a_type', 'termination_a_id'), + ('termination_b_type', 'termination_b_id'), ) # TODO: This should follow all cables in a path @@ -2377,4 +2377,4 @@ class Cable(ChangeLoggedModel): """ Return the endpoints connected by this cable path. """ - return (self.endpoint_a, self.endpoint_b) + return (self.termination_a, self.termination_b) diff --git a/netbox/dcim/signals.py b/netbox/dcim/signals.py index 68dce2938..2320ba2d5 100644 --- a/netbox/dcim/signals.py +++ b/netbox/dcim/signals.py @@ -26,11 +26,11 @@ def update_connected_endpoints(instance, **kwargs): """ When a Cable is saved, update its connected endpoints. """ - endpoint_a, endpoint_b = instance.get_path_endpoints() - endpoint_a.connected_endpoint = endpoint_b - endpoint_a.save() - endpoint_b.connected_endpoint = endpoint_a - endpoint_b.save() + termination_a, termination_b = instance.get_path_endpoints() + termination_a.connected_endpoint = termination_b + termination_a.save() + termination_b.connected_endpoint = termination_a + termination_b.save() @receiver(post_delete, sender=Cable) @@ -38,8 +38,8 @@ def nullify_connected_endpoints(instance, **kwargs): """ When a Cable is deleted, nullify its connected endpoints. """ - endpoint_a, endpoint_b = instance.get_path_endpoints() - endpoint_a.connected_endpoint = None - endpoint_a.save() - endpoint_b.connected_endpoint = None - endpoint_b.save() + termination_a, termination_b = instance.get_path_endpoints() + termination_a.connected_endpoint = None + termination_a.save() + termination_b.connected_endpoint = None + termination_b.save() diff --git a/netbox/dcim/tables.py b/netbox/dcim/tables.py index df7b6d89b..c8566e008 100644 --- a/netbox/dcim/tables.py +++ b/netbox/dcim/tables.py @@ -623,22 +623,22 @@ class DeviceBayTable(BaseTable): class CableTable(BaseTable): device_a = tables.LinkColumn( viewname='dcim:device', - accessor=Accessor('endpoint_a.device'), - args=[Accessor('endpoint_a.device.pk')], + accessor=Accessor('termination_a.device'), + args=[Accessor('termination_a.device.pk')], verbose_name='Device A' ) termination_a = tables.Column( - accessor=Accessor('endpoint_a.name'), + accessor=Accessor('termination_a.name'), verbose_name='Component' ) device_b = tables.LinkColumn( viewname='dcim:device', - accessor=Accessor('endpoint_b.device'), - args=[Accessor('endpoint_b.device.pk')], + accessor=Accessor('termination_b.device'), + args=[Accessor('termination_b.device.pk')], verbose_name='Device B' ) termination_b = tables.Column( - accessor=Accessor('endpoint_b.name'), + accessor=Accessor('termination_b.name'), verbose_name='Component' ) # django-tables2 adds CSS `class="label"` which causes rendering issues diff --git a/netbox/dcim/urls.py b/netbox/dcim/urls.py index 0a71c698f..2c6152e5b 100644 --- a/netbox/dcim/urls.py +++ b/netbox/dcim/urls.py @@ -162,7 +162,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/console-ports/add/$', views.ConsolePortCreateView.as_view(), name='consoleport_add'), url(r'^devices/(?P\d+)/console-ports/delete/$', views.ConsolePortBulkDeleteView.as_view(), name='consoleport_bulk_delete'), # url(r'^console-ports/(?P\d+)/connect/$', views.ConsolePortConnectView.as_view(), name='consoleport_connect'), - url(r'^console-ports/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='consoleport_connect', kwargs={'endpoint_a_type': ConsolePort}), + url(r'^console-ports/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='consoleport_connect', kwargs={'termination_a_type': ConsolePort}), url(r'^console-ports/(?P\d+)/disconnect/$', views.ConsolePortDisconnectView.as_view(), name='consoleport_disconnect'), url(r'^console-ports/(?P\d+)/edit/$', views.ConsolePortEditView.as_view(), name='consoleport_edit'), url(r'^console-ports/(?P\d+)/delete/$', views.ConsolePortDeleteView.as_view(), name='consoleport_delete'), @@ -173,7 +173,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/console-server-ports/disconnect/$', views.ConsoleServerPortBulkDisconnectView.as_view(), name='consoleserverport_bulk_disconnect'), url(r'^devices/(?P\d+)/console-server-ports/delete/$', views.ConsoleServerPortBulkDeleteView.as_view(), name='consoleserverport_bulk_delete'), # url(r'^console-server-ports/(?P\d+)/connect/$', views.ConsoleServerPortConnectView.as_view(), name='consoleserverport_connect'), - url(r'^console-server-ports/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='consoleserverport_connect', kwargs={'endpoint_a_type': ConsoleServerPort}), + url(r'^console-server-ports/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='consoleserverport_connect', kwargs={'termination_a_type': ConsoleServerPort}), url(r'^console-server-ports/(?P\d+)/disconnect/$', views.ConsoleServerPortDisconnectView.as_view(), name='consoleserverport_disconnect'), url(r'^console-server-ports/(?P\d+)/edit/$', views.ConsoleServerPortEditView.as_view(), name='consoleserverport_edit'), url(r'^console-server-ports/(?P\d+)/delete/$', views.ConsoleServerPortDeleteView.as_view(), name='consoleserverport_delete'), @@ -184,7 +184,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/power-ports/add/$', views.PowerPortCreateView.as_view(), name='powerport_add'), url(r'^devices/(?P\d+)/power-ports/delete/$', views.PowerPortBulkDeleteView.as_view(), name='powerport_bulk_delete'), # url(r'^power-ports/(?P\d+)/connect/$', views.PowerPortConnectView.as_view(), name='powerport_connect'), - url(r'^power-ports/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='powerport_connect', kwargs={'endpoint_a_type': PowerPort}), + url(r'^power-ports/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='powerport_connect', kwargs={'termination_a_type': PowerPort}), url(r'^power-ports/(?P\d+)/disconnect/$', views.PowerPortDisconnectView.as_view(), name='powerport_disconnect'), url(r'^power-ports/(?P\d+)/edit/$', views.PowerPortEditView.as_view(), name='powerport_edit'), url(r'^power-ports/(?P\d+)/delete/$', views.PowerPortDeleteView.as_view(), name='powerport_delete'), @@ -195,7 +195,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/power-outlets/disconnect/$', views.PowerOutletBulkDisconnectView.as_view(), name='poweroutlet_bulk_disconnect'), url(r'^devices/(?P\d+)/power-outlets/delete/$', views.PowerOutletBulkDeleteView.as_view(), name='poweroutlet_bulk_delete'), # url(r'^power-outlets/(?P\d+)/connect/$', views.PowerOutletConnectView.as_view(), name='poweroutlet_connect'), - url(r'^power-outlets/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='poweroutlet_connect', kwargs={'endpoint_a_type': PowerOutlet}), + url(r'^power-outlets/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='poweroutlet_connect', kwargs={'termination_a_type': PowerOutlet}), url(r'^power-outlets/(?P\d+)/disconnect/$', views.PowerOutletDisconnectView.as_view(), name='poweroutlet_disconnect'), url(r'^power-outlets/(?P\d+)/edit/$', views.PowerOutletEditView.as_view(), name='poweroutlet_edit'), url(r'^power-outlets/(?P\d+)/delete/$', views.PowerOutletDeleteView.as_view(), name='poweroutlet_delete'), @@ -207,7 +207,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/interfaces/edit/$', views.InterfaceBulkEditView.as_view(), name='interface_bulk_edit'), url(r'^devices/(?P\d+)/interfaces/disconnect/$', views.InterfaceBulkDisconnectView.as_view(), name='interface_bulk_disconnect'), url(r'^devices/(?P\d+)/interfaces/delete/$', views.InterfaceBulkDeleteView.as_view(), name='interface_bulk_delete'), - url(r'^interfaces/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='interface_connect', kwargs={'endpoint_a_type': Interface}), + url(r'^interfaces/(?P\d+)/connect/$', views.CableCreateView.as_view(), name='interface_connect', kwargs={'termination_a_type': Interface}), url(r'^interfaces/(?P\d+)/$', views.InterfaceView.as_view(), name='interface'), url(r'^interfaces/(?P\d+)/edit/$', views.InterfaceEditView.as_view(), name='interface_edit'), url(r'^interfaces/(?P\d+)/assign-vlans/$', views.InterfaceAssignVLANsView.as_view(), name='interface_assign_vlans'), diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index 3246ca281..d16a59f5d 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -2015,7 +2015,7 @@ class DeviceBulkAddDeviceBayView(PermissionRequiredMixin, BulkComponentCreateVie class CableListView(ObjectListView): queryset = Cable.objects.prefetch_related( - 'endpoint_a__device', 'endpoint_b__device' + 'termination_a__device', 'termination_b__device' ) # filter = filters.CableFilter # filter_form = forms.CableFilterForm @@ -2032,9 +2032,9 @@ class CableCreateView(PermissionRequiredMixin, ObjectEditView): def alter_obj(self, obj, request, url_args, url_kwargs): # Retrieve endpoint A based on the given type and PK - endpoint_a_type = url_kwargs.get('endpoint_a_type') - endpoint_a_id = url_kwargs.get('endpoint_a_id') - obj.endpoint_a = endpoint_a_type.objects.get(pk=endpoint_a_id) + termination_a_type = url_kwargs.get('termination_a_type') + termination_a_id = url_kwargs.get('termination_a_id') + obj.termination_a = termination_a_type.objects.get(pk=termination_a_id) return obj diff --git a/netbox/templates/dcim/cable_connect.html b/netbox/templates/dcim/cable_connect.html index 66327170e..f067bd8d5 100644 --- a/netbox/templates/dcim/cable_connect.html +++ b/netbox/templates/dcim/cable_connect.html @@ -20,8 +20,8 @@ {% endif %} - {% with endpoint_a=form.instance.endpoint_a %} -

{% block title %}Connect {{ endpoint_a.device }} {{ endpoint_a }}{% endblock %}

+ {% with termination_a=form.instance.termination_a %} +

{% block title %}Connect {{ termination_a.device }} {{ termination_a }}{% endblock %}

@@ -32,25 +32,25 @@
-

{{ endpoint_a.device.site }}

+

{{ termination_a.device.site }}

-

{{ endpoint_a.device.rack|default:"None" }}

+

{{ termination_a.device.rack|default:"None" }}

-

{{ endpoint_a.device }}

+

{{ termination_a.device }}

-

{{ endpoint_a }}

+

{{ termination_a }}

@@ -74,13 +74,13 @@ {% render_field form.livesearch %}
- {% render_field form.endpoint_b_site %} - {% render_field form.endpoint_b_rack %} - {% render_field form.endpoint_b_device %} + {% render_field form.termination_b_site %} + {% render_field form.termination_b_rack %} + {% render_field form.termination_b_device %}
- {% render_field form.endpoint_b_type %} - {% render_field form.endpoint_b_id %} + {% render_field form.termination_b_type %} + {% render_field form.termination_b_id %} diff --git a/netbox/templates/dcim/inc/consoleport.html b/netbox/templates/dcim/inc/consoleport.html index 70511408b..e8c7c5b35 100644 --- a/netbox/templates/dcim/inc/consoleport.html +++ b/netbox/templates/dcim/inc/consoleport.html @@ -30,7 +30,7 @@ {% else %} - + {% endif %} diff --git a/netbox/templates/dcim/inc/consoleserverport.html b/netbox/templates/dcim/inc/consoleserverport.html index e23ffe5e9..700e940dd 100644 --- a/netbox/templates/dcim/inc/consoleserverport.html +++ b/netbox/templates/dcim/inc/consoleserverport.html @@ -35,7 +35,7 @@ {% else %} - + {% endif %} diff --git a/netbox/templates/dcim/inc/interface.html b/netbox/templates/dcim/inc/interface.html index 723f14760..d9ebc14b0 100644 --- a/netbox/templates/dcim/inc/interface.html +++ b/netbox/templates/dcim/inc/interface.html @@ -106,7 +106,7 @@ {% else %} - + {% endif %} diff --git a/netbox/templates/dcim/inc/poweroutlet.html b/netbox/templates/dcim/inc/poweroutlet.html index 313f458e9..5081c1f6e 100644 --- a/netbox/templates/dcim/inc/poweroutlet.html +++ b/netbox/templates/dcim/inc/poweroutlet.html @@ -35,7 +35,7 @@ {% else %} - + {% endif %} diff --git a/netbox/templates/dcim/inc/powerport.html b/netbox/templates/dcim/inc/powerport.html index 47989ddee..0d46c4ba9 100644 --- a/netbox/templates/dcim/inc/powerport.html +++ b/netbox/templates/dcim/inc/powerport.html @@ -30,7 +30,7 @@ {% else %} - + {% endif %}