From 3feba2997f989241862c37d353144acd734d2208 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Fri, 13 Aug 2021 15:56:14 -0400 Subject: [PATCH] Closes #6872: Add table configuration button to child prefixes view --- docs/release-notes/version-2.11.md | 1 + netbox/ipam/views.py | 4 +++- netbox/templates/ipam/prefix/prefixes.html | 10 ++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/version-2.11.md b/docs/release-notes/version-2.11.md index bab219ca5..77bd33dbf 100644 --- a/docs/release-notes/version-2.11.md +++ b/docs/release-notes/version-2.11.md @@ -5,6 +5,7 @@ ### Enhancements * [#6748](https://github.com/netbox-community/netbox/issues/6748) - Add site group filter to devices list +* [#6872](https://github.com/netbox-community/netbox/issues/6872) - Add table configuration button to child prefixes view --- diff --git a/netbox/ipam/views.py b/netbox/ipam/views.py index 95546fcc6..33d332d40 100644 --- a/netbox/ipam/views.py +++ b/netbox/ipam/views.py @@ -4,6 +4,7 @@ from django.shortcuts import get_object_or_404, redirect, render from dcim.models import Device, Interface from netbox.views import generic +from utilities.forms import TableConfigForm from utilities.tables import paginate_table from utilities.utils import count_related from virtualization.models import VirtualMachine, VMInterface @@ -412,7 +413,7 @@ class PrefixPrefixesView(generic.ObjectView): if child_prefixes and request.GET.get('show_available', 'true') == 'true': child_prefixes = add_available_prefixes(instance.prefix, child_prefixes) - prefix_table = tables.PrefixDetailTable(child_prefixes) + prefix_table = tables.PrefixDetailTable(child_prefixes, user=request.user) if request.user.has_perm('ipam.change_prefix') or request.user.has_perm('ipam.delete_prefix'): prefix_table.columns.show('pk') paginate_table(prefix_table, request) @@ -433,6 +434,7 @@ class PrefixPrefixesView(generic.ObjectView): 'bulk_querystring': bulk_querystring, 'active_tab': 'prefixes', 'show_available': request.GET.get('show_available', 'true') == 'true', + 'table_config_form': TableConfigForm(table=prefix_table), } diff --git a/netbox/templates/ipam/prefix/prefixes.html b/netbox/templates/ipam/prefix/prefixes.html index 61baa2f1e..e9e3acd77 100644 --- a/netbox/templates/ipam/prefix/prefixes.html +++ b/netbox/templates/ipam/prefix/prefixes.html @@ -1,7 +1,12 @@ {% extends 'ipam/prefix/base.html' %} +{% load helpers %} +{% load static %} {% block buttons %} {% include 'ipam/inc/toggle_available.html' %} + {% if request.user.is_authenticated and table_config_form %} + + {% endif %} {% if perms.ipam.add_prefix and active_tab == 'prefixes' and first_available_prefix %} Add Child Prefix @@ -22,4 +27,9 @@ {% include 'utilities/obj_table.html' with table=prefix_table table_template='panel_table.html' heading='Child Prefixes' bulk_edit_url='ipam:prefix_bulk_edit' bulk_delete_url='ipam:prefix_bulk_delete' parent=prefix %} + {% table_config_form prefix_table table_name="PrefixDetailTable" %} +{% endblock %} + +{% block javascript %} + {% endblock %}