From fd38daf0c58945f6366c81f843ea414330156123 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Fri, 28 Oct 2016 16:14:23 -0400 Subject: [PATCH] Standardized device component edit views to use ObjectEditView() --- netbox/dcim/models.py | 21 ++ netbox/dcim/urls.py | 14 +- netbox/dcim/views.py | 191 ++++-------------- netbox/templates/dcim/consoleport_edit.html | 51 ----- .../dcim/consoleserverport_edit.html | 51 ----- ...le_edit.html => device_component_add.html} | 14 +- netbox/templates/dcim/devicebay_edit.html | 51 ----- netbox/templates/dcim/interface_edit.html | 51 ----- netbox/templates/dcim/poweroutlet_edit.html | 51 ----- netbox/templates/dcim/powerport_edit.html | 51 ----- 10 files changed, 76 insertions(+), 470 deletions(-) delete mode 100644 netbox/templates/dcim/consoleport_edit.html delete mode 100644 netbox/templates/dcim/consoleserverport_edit.html rename netbox/templates/dcim/{module_edit.html => device_component_add.html} (60%) delete mode 100644 netbox/templates/dcim/devicebay_edit.html delete mode 100644 netbox/templates/dcim/interface_edit.html delete mode 100644 netbox/templates/dcim/poweroutlet_edit.html delete mode 100644 netbox/templates/dcim/powerport_edit.html diff --git a/netbox/dcim/models.py b/netbox/dcim/models.py index b40770c35..f487759a7 100644 --- a/netbox/dcim/models.py +++ b/netbox/dcim/models.py @@ -991,6 +991,9 @@ class ConsolePort(models.Model): def __unicode__(self): return self.name + def get_absolute_url(self): + return self.device.get_absolute_url() + # Used for connections export def to_csv(self): return ','.join([ @@ -1032,6 +1035,9 @@ class ConsoleServerPort(models.Model): def __unicode__(self): return self.name + def get_absolute_url(self): + return self.device.get_absolute_url() + class PowerPort(models.Model): """ @@ -1050,6 +1056,9 @@ class PowerPort(models.Model): def __unicode__(self): return self.name + def get_absolute_url(self): + return self.device.get_absolute_url() + # Used for connections export def to_csv(self): return ','.join([ @@ -1085,6 +1094,9 @@ class PowerOutlet(models.Model): def __unicode__(self): return self.name + def get_absolute_url(self): + return self.device.get_absolute_url() + class InterfaceManager(models.Manager): @@ -1121,6 +1133,9 @@ class Interface(models.Model): def __unicode__(self): return self.name + def get_absolute_url(self): + return self.device.get_absolute_url() + def clean(self): if self.form_factor == IFACE_FF_VIRTUAL and self.is_connected: @@ -1209,6 +1224,9 @@ class DeviceBay(models.Model): def __unicode__(self): return u'{} - {}'.format(self.device.name, self.name) + def get_absolute_url(self): + return self.device.get_absolute_url() + def clean(self): # Validate that the parent Device can have DeviceBays @@ -1242,3 +1260,6 @@ class Module(models.Model): def __unicode__(self): return self.name + + def get_absolute_url(self): + return reverse('dcim:device_inventory', args=[self.device.pk]) diff --git a/netbox/dcim/urls.py b/netbox/dcim/urls.py index b5b960f57..0b3714159 100644 --- a/netbox/dcim/urls.py +++ b/netbox/dcim/urls.py @@ -110,7 +110,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/console-ports/delete/$', views.ConsolePortBulkDeleteView.as_view(), name='consoleport_bulk_delete'), url(r'^console-ports/(?P\d+)/connect/$', views.consoleport_connect, name='consoleport_connect'), url(r'^console-ports/(?P\d+)/disconnect/$', views.consoleport_disconnect, name='consoleport_disconnect'), - url(r'^console-ports/(?P\d+)/edit/$', views.consoleport_edit, name='consoleport_edit'), + url(r'^console-ports/(?P\d+)/edit/$', views.ConsolePortEditView.as_view(), name='consoleport_edit'), url(r'^console-ports/(?P\d+)/delete/$', views.consoleport_delete, name='consoleport_delete'), # Console server ports @@ -118,7 +118,7 @@ urlpatterns = [ 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.consoleserverport_connect, name='consoleserverport_connect'), url(r'^console-server-ports/(?P\d+)/disconnect/$', views.consoleserverport_disconnect, name='consoleserverport_disconnect'), - url(r'^console-server-ports/(?P\d+)/edit/$', views.consoleserverport_edit, name='consoleserverport_edit'), + url(r'^console-server-ports/(?P\d+)/edit/$', views.ConsoleServerPortEditView.as_view(), name='consoleserverport_edit'), url(r'^console-server-ports/(?P\d+)/delete/$', views.consoleserverport_delete, name='consoleserverport_delete'), # Power ports @@ -126,7 +126,7 @@ urlpatterns = [ url(r'^devices/(?P\d+)/power-ports/delete/$', views.PowerPortBulkDeleteView.as_view(), name='powerport_bulk_delete'), url(r'^power-ports/(?P\d+)/connect/$', views.powerport_connect, name='powerport_connect'), url(r'^power-ports/(?P\d+)/disconnect/$', views.powerport_disconnect, name='powerport_disconnect'), - url(r'^power-ports/(?P\d+)/edit/$', views.powerport_edit, name='powerport_edit'), + url(r'^power-ports/(?P\d+)/edit/$', views.PowerPortEditView.as_view(), name='powerport_edit'), url(r'^power-ports/(?P\d+)/delete/$', views.powerport_delete, name='powerport_delete'), # Power outlets @@ -134,13 +134,13 @@ urlpatterns = [ url(r'^devices/(?P\d+)/power-outlets/delete/$', views.PowerOutletBulkDeleteView.as_view(), name='poweroutlet_bulk_delete'), url(r'^power-outlets/(?P\d+)/connect/$', views.poweroutlet_connect, name='poweroutlet_connect'), url(r'^power-outlets/(?P\d+)/disconnect/$', views.poweroutlet_disconnect, name='poweroutlet_disconnect'), - url(r'^power-outlets/(?P\d+)/edit/$', views.poweroutlet_edit, name='poweroutlet_edit'), + url(r'^power-outlets/(?P\d+)/edit/$', views.PowerOutletEditView.as_view(), name='poweroutlet_edit'), url(r'^power-outlets/(?P\d+)/delete/$', views.poweroutlet_delete, name='poweroutlet_delete'), # Device bays url(r'^devices/(?P\d+)/bays/add/$', views.devicebay_add, name='devicebay_add'), url(r'^devices/(?P\d+)/bays/delete/$', views.DeviceBayBulkDeleteView.as_view(), name='devicebay_bulk_delete'), - url(r'^device-bays/(?P\d+)/edit/$', views.devicebay_edit, name='devicebay_edit'), + url(r'^device-bays/(?P\d+)/edit/$', views.DeviceBayEditView.as_view(), name='devicebay_edit'), url(r'^device-bays/(?P\d+)/delete/$', views.devicebay_delete, name='devicebay_delete'), url(r'^device-bays/(?P\d+)/populate/$', views.devicebay_populate, name='devicebay_populate'), url(r'^device-bays/(?P\d+)/depopulate/$', views.devicebay_depopulate, name='devicebay_depopulate'), @@ -160,12 +160,12 @@ urlpatterns = [ url(r'^devices/(?P\d+)/interfaces/delete/$', views.InterfaceBulkDeleteView.as_view(), name='interface_bulk_delete'), url(r'^devices/(?P\d+)/interface-connections/add/$', views.interfaceconnection_add, name='interfaceconnection_add'), url(r'^interface-connections/(?P\d+)/delete/$', views.interfaceconnection_delete, name='interfaceconnection_delete'), - url(r'^interfaces/(?P\d+)/edit/$', views.interface_edit, name='interface_edit'), + url(r'^interfaces/(?P\d+)/edit/$', views.InterfaceEditView.as_view(), name='interface_edit'), url(r'^interfaces/(?P\d+)/delete/$', views.interface_delete, name='interface_delete'), # Modules url(r'^devices/(?P\d+)/modules/add/$', views.module_add, name='module_add'), - url(r'^modules/(?P\d+)/edit/$', views.module_edit, name='module_edit'), + url(r'^modules/(?P\d+)/edit/$', views.ModuleEditView.as_view(), name='module_edit'), url(r'^modules/(?P\d+)/delete/$', views.module_delete, name='module_delete'), ] diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index 501859f55..1577edb84 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -722,8 +722,9 @@ def consoleport_add(request, pk): else: form = forms.ConsolePortCreateForm() - return render(request, 'dcim/consoleport_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Console Port', 'form': form, 'cancel_url': reverse('dcim:device', kwargs={'pk': device.pk}), }) @@ -788,26 +789,10 @@ def consoleport_disconnect(request, pk): }) -@permission_required('dcim.change_consoleport') -def consoleport_edit(request, pk): - - consoleport = get_object_or_404(ConsolePort, pk=pk) - - if request.method == 'POST': - form = forms.ConsolePortForm(request.POST, instance=consoleport) - if form.is_valid(): - consoleport = form.save() - messages.success(request, "Modified {0} {1}".format(consoleport.device.name, consoleport.name)) - return redirect('dcim:device', pk=consoleport.device.pk) - - else: - form = forms.ConsolePortForm(instance=consoleport) - - return render(request, 'dcim/consoleport_edit.html', { - 'consoleport': consoleport, - 'form': form, - 'cancel_url': reverse('dcim:device', kwargs={'pk': consoleport.device.pk}), - }) +class ConsolePortEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_consoleport' + model = ConsolePort + form_class = forms.ConsolePortForm @permission_required('dcim.delete_consoleport') @@ -882,8 +867,9 @@ def consoleserverport_add(request, pk): else: form = forms.ConsoleServerPortCreateForm() - return render(request, 'dcim/consoleserverport_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Console Server Port', 'form': form, 'cancel_url': reverse('dcim:device', kwargs={'pk': device.pk}), }) @@ -949,26 +935,10 @@ def consoleserverport_disconnect(request, pk): }) -@permission_required('dcim.change_consoleserverport') -def consoleserverport_edit(request, pk): - - consoleserverport = get_object_or_404(ConsoleServerPort, pk=pk) - - if request.method == 'POST': - form = forms.ConsoleServerPortForm(request.POST, instance=consoleserverport) - if form.is_valid(): - consoleserverport = form.save() - messages.success(request, "Modified {0} {1}".format(consoleserverport.device.name, consoleserverport.name)) - return redirect('dcim:device', pk=consoleserverport.device.pk) - - else: - form = forms.ConsoleServerPortForm(instance=consoleserverport) - - return render(request, 'dcim/consoleserverport_edit.html', { - 'consoleserverport': consoleserverport, - 'form': form, - 'cancel_url': reverse('dcim:device', kwargs={'pk': consoleserverport.device.pk}), - }) +class ConsoleServerPortEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_consoleserverport' + model = ConsoleServerPort + form_class = forms.ConsoleServerPortForm @permission_required('dcim.delete_consoleserverport') @@ -1035,8 +1005,9 @@ def powerport_add(request, pk): else: form = forms.PowerPortCreateForm() - return render(request, 'dcim/powerport_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Power Port', 'form': form, 'cancel_url': reverse('dcim:device', kwargs={'pk': device.pk}), }) @@ -1101,26 +1072,10 @@ def powerport_disconnect(request, pk): }) -@permission_required('dcim.change_powerport') -def powerport_edit(request, pk): - - powerport = get_object_or_404(PowerPort, pk=pk) - - if request.method == 'POST': - form = forms.PowerPortForm(request.POST, instance=powerport) - if form.is_valid(): - powerport = form.save() - messages.success(request, "Modified {0} power port {1}".format(powerport.device.name, powerport.name)) - return redirect('dcim:device', pk=powerport.device.pk) - - else: - form = forms.PowerPortForm(instance=powerport) - - return render(request, 'dcim/powerport_edit.html', { - 'powerport': powerport, - 'form': form, - 'cancel_url': reverse('dcim:device', kwargs={'pk': powerport.device.pk}), - }) +class PowerPortEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_powerport' + model = PowerPort + form_class = forms.PowerPortForm @permission_required('dcim.delete_powerport') @@ -1193,8 +1148,9 @@ def poweroutlet_add(request, pk): else: form = forms.PowerOutletCreateForm() - return render(request, 'dcim/poweroutlet_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Power Outlet', 'form': form, 'cancel_url': reverse('dcim:device', kwargs={'pk': device.pk}), }) @@ -1259,26 +1215,10 @@ def poweroutlet_disconnect(request, pk): }) -@permission_required('dcim.change_poweroutlet') -def poweroutlet_edit(request, pk): - - poweroutlet = get_object_or_404(PowerOutlet, pk=pk) - - if request.method == 'POST': - form = forms.PowerOutletForm(request.POST, instance=poweroutlet) - if form.is_valid(): - poweroutlet = form.save() - messages.success(request, "Modified {0} power outlet {1}".format(poweroutlet.device.name, poweroutlet.name)) - return redirect('dcim:device', pk=poweroutlet.device.pk) - - else: - form = forms.PowerOutletForm(instance=poweroutlet) - - return render(request, 'dcim/poweroutlet_edit.html', { - 'poweroutlet': poweroutlet, - 'form': form, - 'cancel_url': reverse('dcim:device', kwargs={'pk': poweroutlet.device.pk}), - }) +class PowerOutletEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_poweroutlet' + model = PowerOutlet + form_class = forms.PowerOutletForm @permission_required('dcim.delete_poweroutlet') @@ -1347,35 +1287,20 @@ def interface_add(request, pk): return redirect('dcim:device', pk=device.pk) else: - form = forms.InterfaceCreateForm() + form = forms.InterfaceCreateForm(initial={'mgmt_only': request.GET.get('mgmt_only')}) - return render(request, 'dcim/interface_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Interface', 'form': form, 'cancel_url': reverse('dcim:device', kwargs={'pk': device.pk}), }) -@permission_required('dcim.change_interface') -def interface_edit(request, pk): - - interface = get_object_or_404(Interface, pk=pk) - - if request.method == 'POST': - form = forms.InterfaceForm(request.POST, instance=interface) - if form.is_valid(): - interface = form.save() - messages.success(request, "Modified {0} interface {1}".format(interface.device.name, interface.name)) - return redirect('dcim:device', pk=interface.device.pk) - - else: - form = forms.InterfaceForm(instance=interface) - - return render(request, 'dcim/interface_edit.html', { - 'interface': interface, - 'form': form, - 'cancel_url': reverse('dcim:device', kwargs={'pk': interface.device.pk}), - }) +class InterfaceEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_interface' + model = Interface + form_class = forms.InterfaceForm @permission_required('dcim.delete_interface') @@ -1483,33 +1408,18 @@ def devicebay_add(request, pk): else: form = forms.DeviceBayCreateForm() - return render(request, 'dcim/devicebay_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Device Bay', 'form': form, 'cancel_url': reverse('dcim:device', kwargs={'pk': device.pk}), }) -@permission_required('dcim.change_devicebay') -def devicebay_edit(request, pk): - - devicebay = get_object_or_404(DeviceBay, pk=pk) - - if request.method == 'POST': - form = forms.DeviceBayForm(request.POST, instance=devicebay) - if form.is_valid(): - devicebay = form.save() - messages.success(request, "Modified {} bay {}".format(devicebay.device.name, devicebay.name)) - return redirect('dcim:device', pk=devicebay.device.pk) - - else: - form = forms.DeviceBayForm(instance=devicebay) - - return render(request, 'dcim/devicebay_edit.html', { - 'devicebay': devicebay, - 'form': form, - 'cancel_url': reverse('dcim:device', kwargs={'pk': devicebay.device.pk}), - }) +class DeviceBayEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_devicebay' + model = DeviceBay + form_class = forms.DeviceBayForm @permission_required('dcim.delete_devicebay') @@ -1775,33 +1685,18 @@ def module_add(request, pk): else: form = forms.ModuleForm() - return render(request, 'dcim/module_edit.html', { + return render(request, 'dcim/device_component_add.html', { 'device': device, + 'component_type': 'Module', 'form': form, 'cancel_url': reverse('dcim:device_inventory', kwargs={'pk': device.pk}), }) -@permission_required('dcim.change_module') -def module_edit(request, pk): - - module = get_object_or_404(Module, pk=pk) - - if request.method == 'POST': - form = forms.ModuleForm(request.POST, instance=module) - if form.is_valid(): - module = form.save() - messages.success(request, "Modified {} module {}".format(module.device.name, module.name)) - return redirect('dcim:device_inventory', pk=module.device.pk) - - else: - form = forms.ModuleForm(instance=module) - - return render(request, 'dcim/module_edit.html', { - 'module': module, - 'form': form, - 'cancel_url': reverse('dcim:device_inventory', kwargs={'pk': module.device.pk}), - }) +class ModuleEditView(PermissionRequiredMixin, ObjectEditView): + permission_required = 'dcim.change_module' + model = Module + form_class = forms.ModuleForm @permission_required('dcim.delete_module') diff --git a/netbox/templates/dcim/consoleport_edit.html b/netbox/templates/dcim/consoleport_edit.html deleted file mode 100644 index ebec708b0..000000000 --- a/netbox/templates/dcim/consoleport_edit.html +++ /dev/null @@ -1,51 +0,0 @@ -{% extends '_base.html' %} -{% load form_helpers %} - -{% block title %}{% if consoleport.pk %}Editing {{ consoleport.device }} {{ consoleport }}{% else %}Add a Console Port ({{ device }}){% endif %}{% endblock %} - -{% block content %} -
- {% csrf_token %} -
-
- {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} -
-
- {% if consoleport.pk %} - Editing {{ consoleport }} - {% else %} - Add a Console Port - {% endif %} -
-
-
- -
-

{% if consoleport %}{{ consoleport.device }}{% else %}{{ device }}{% endif %}

-
-
- {% render_form form %} -
-
-
-
- {% if consoleport.pk %} - - {% else %} - - - {% endif %} - Cancel -
-
-
-
-
-{% endblock %} diff --git a/netbox/templates/dcim/consoleserverport_edit.html b/netbox/templates/dcim/consoleserverport_edit.html deleted file mode 100644 index 21871c477..000000000 --- a/netbox/templates/dcim/consoleserverport_edit.html +++ /dev/null @@ -1,51 +0,0 @@ -{% extends '_base.html' %} -{% load form_helpers %} - -{% block title %}{% if consoleserverport.pk %}Editing {{ consoleserverport.device }} {{ consoleserverport }}{% else %}Add a Console Server Port ({{ device }}){% endif %}{% endblock %} - -{% block content %} -
- {% csrf_token %} -
-
- {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} -
-
- {% if consoleserverport.pk %} - Editing {{ consoleserverport }} - {% else %} - Add a Console Server Port - {% endif %} -
-
-
- -
-

{% if consoleserverport %}{{ consoleserverport.device }}{% else %}{{ device }}{% endif %}

-
-
- {% render_form form %} -
-
-
-
- {% if consoleserverport.pk %} - - {% else %} - - - {% endif %} - Cancel -
-
-
-
-
-{% endblock %} diff --git a/netbox/templates/dcim/module_edit.html b/netbox/templates/dcim/device_component_add.html similarity index 60% rename from netbox/templates/dcim/module_edit.html rename to netbox/templates/dcim/device_component_add.html index b1a1d4334..f678877a1 100644 --- a/netbox/templates/dcim/module_edit.html +++ b/netbox/templates/dcim/device_component_add.html @@ -1,7 +1,7 @@ {% extends '_base.html' %} {% load form_helpers %} -{% block title %}{% if module %}Editing {{ module.device }} {{ module }}{% else %}Add a Module to {{ device }}{% endif %}{% endblock %} +{% block title %}Create {{ component_type }} ({{ device }}){% endblock %} {% block content %}
@@ -18,13 +18,13 @@ {% endif %}
- {% if module %}Editing {{ module.device }} {{ module }}{% else %}Add a Module to {{ device }}{% endif %} + {{ component_type }}
-

{% if module %}{{ module.device }}{% else %}{{ device }}{% endif %}

+

{{ device }}

{% render_form form %} @@ -32,12 +32,8 @@
- {% if module.pk %} - - {% else %} - - - {% endif %} + + Cancel
diff --git a/netbox/templates/dcim/devicebay_edit.html b/netbox/templates/dcim/devicebay_edit.html deleted file mode 100644 index 507cf0eaf..000000000 --- a/netbox/templates/dcim/devicebay_edit.html +++ /dev/null @@ -1,51 +0,0 @@ -{% extends '_base.html' %} -{% load form_helpers %} - -{% block title %}{% if devicebay.pk %}Editing {{ devicebay.device }} {{ devicebay }}{% else %}Add a Device Bay ({{ device }}){% endif %}{% endblock %} - -{% block content %} - - {% csrf_token %} -
-
- {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} -
-
- {% if poweroutlet.pk %} - Editing {{ devicebay }} - {% else %} - Add a Device Bay - {% endif %} -
-
-
- -
-

{% if devicebay %}{{ devicebay.device }}{% else %}{{ device }}{% endif %}

-
-
- {% render_form form %} -
-
-
-
- {% if devicebay.pk %} - - {% else %} - - - {% endif %} - Cancel -
-
-
-
- -{% endblock %} diff --git a/netbox/templates/dcim/interface_edit.html b/netbox/templates/dcim/interface_edit.html deleted file mode 100644 index 098199184..000000000 --- a/netbox/templates/dcim/interface_edit.html +++ /dev/null @@ -1,51 +0,0 @@ -{% extends '_base.html' %} -{% load form_helpers %} - -{% block title %}{% if interface.pk %}Editing {{ interface.device }} {{ interface }}{% else %}Add an Interface ({{ device }}){% endif %}{% endblock %} - -{% block content %} -
- {% csrf_token %} -
-
- {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} -
-
- {% if interface.pk %} - Editing {{ interface }} - {% else %} - Add an Interface - {% endif %} -
-
-
- -
-

{% if interface %}{{ interface.device }}{% else %}{{ device }}{% endif %}

-
-
- {% render_form form %} -
-
-
-
- {% if interface.pk %} - - {% else %} - - - {% endif %} - Cancel -
-
-
-
-
-{% endblock %} diff --git a/netbox/templates/dcim/poweroutlet_edit.html b/netbox/templates/dcim/poweroutlet_edit.html deleted file mode 100644 index 9e83a9b53..000000000 --- a/netbox/templates/dcim/poweroutlet_edit.html +++ /dev/null @@ -1,51 +0,0 @@ -{% extends '_base.html' %} -{% load form_helpers %} - -{% block title %}{% if poweroutlet.pk %}Editing {{ poweroutlet.device }} {{ poweroutlet }}{% else %}Add a Power Outlet ({{ device }}){% endif %}{% endblock %} - -{% block content %} -
- {% csrf_token %} -
-
- {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} -
-
- {% if poweroutlet.pk %} - Editing {{ poweroutlet }} - {% else %} - Add a Power Outlet - {% endif %} -
-
-
- -
-

{% if poweroutlet %}{{ poweroutlet.device }}{% else %}{{ device }}{% endif %}

-
-
- {% render_form form %} -
-
-
-
- {% if poweroutlet.pk %} - - {% else %} - - - {% endif %} - Cancel -
-
-
-
-
-{% endblock %} diff --git a/netbox/templates/dcim/powerport_edit.html b/netbox/templates/dcim/powerport_edit.html deleted file mode 100644 index 4eeb940b4..000000000 --- a/netbox/templates/dcim/powerport_edit.html +++ /dev/null @@ -1,51 +0,0 @@ -{% extends '_base.html' %} -{% load form_helpers %} - -{% block title %}{% if powerport.pk %}Editing {{ powerport.device }} {{ powerport }}{% else %}Add a Power Port ({{ device }}){% endif %}{% endblock %} - -{% block content %} -
- {% csrf_token %} -
-
- {% if form.non_field_errors %} -
-
Errors
-
- {{ form.non_field_errors }} -
-
- {% endif %} -
-
- {% if powerport.pk %} - Editing {{ powerport }} - {% else %} - Add a Power Port - {% endif %} -
-
-
- -
-

{% if powerport %}{{ powerport.device }}{% else %}{{ device }}{% endif %}

-
-
- {% render_form form %} -
-
-
-
- {% if powerport.pk %} - - {% else %} - - - {% endif %} - Cancel -
-
-
-
-
-{% endblock %}