Compare commits

..
6 Commits
Author SHA1 Message Date
mattieserver 78b8a5ae97 v3.7.0 (#371) 2023-08-31 13:48:01 +02:00
mattieserver 71e4807cb1 prepare for netbox v3.6.0 release (#366)
* prepare for netbox v3.6.0 release

* updated readme to reflect the version
2023-08-31 12:33:09 +02:00
mattieserver dfbe26318f bump version (#359) 2023-07-28 10:55:55 +02:00
mattieserver debc314714 added permissions (#358) 2023-07-28 10:52:34 +02:00
mattieserver d14d9c1414 3.6.1 (#348) 2023-07-11 15:26:01 +02:00
Mario d48d213b2c fixed coordinate import url (#346) 2023-07-11 15:17:02 +02:00
11 changed files with 25 additions and 20 deletions
+1
View File
@@ -50,6 +50,7 @@ python3 manage.py collectstatic --no-input
| netbox version | netbox-topology-views version |
| -------------- | ----------------------------- |
| >= 3.6.0 | >= v3.7.X |
| >= 3.5.0 | >= v3.4.X |
| >= 3.4.0 | >= v3.X.X |
| >= 3.3.0 | >= v3.0.0 |
+1 -1
View File
@@ -5,7 +5,7 @@ class TopologyViewsConfig(PluginConfig):
name = "netbox_topology_views"
verbose_name = "Topology views"
description = "An plugin to render topology maps"
version = "3.6.0"
version = "3.7.0"
author = "Mattijs Vanhaverbeke"
author_email = "author@example.com"
base_url = "netbox_topology_views"
+1 -1
View File
@@ -90,7 +90,7 @@ class ExportTopoToXML(PermissionRequiredMixin, ViewSet):
self.filterset = DeviceFilterSet
self.queryset = Device.objects.all().select_related(
"device_type", "device_role"
"device_type", "role"
)
self.queryset = self.filterset(request.GET, self.queryset).qs
+2 -2
View File
@@ -12,8 +12,8 @@ class DeviceFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
method="search",
label="Search",
)
device_role_id = django_filters.ModelMultipleChoiceFilter(
field_name="device_role_id",
role_id = django_filters.ModelMultipleChoiceFilter(
field_name="role_id",
queryset=DeviceRole.objects.all(),
label="Role (ID)",
)
+3 -3
View File
@@ -56,7 +56,7 @@ class DeviceFilterForm(TenancyFilterForm, NetBoxModelFilterSetForm):
(
None,
(
"device_role_id",
"role_id",
"id",
"status",
),
@@ -71,7 +71,7 @@ class DeviceFilterForm(TenancyFilterForm, NetBoxModelFilterSetForm):
region_id = DynamicModelMultipleChoiceField(
queryset=Region.objects.all(), required=False, label=_("Region")
)
device_role_id = DynamicModelMultipleChoiceField(
role_id = DynamicModelMultipleChoiceField(
queryset=DeviceRole.objects.all(), required=False, label=_("Device Role")
)
id = DynamicModelMultipleChoiceField(
@@ -82,7 +82,7 @@ class DeviceFilterForm(TenancyFilterForm, NetBoxModelFilterSetForm):
"location_id": "$location_id",
"region_id": "$region_id",
"site_id": "$site_id",
"role_id": "$device_role_id",
"role_id": "$role_id",
},
)
site_id = DynamicModelMultipleChoiceField(
+9 -5
View File
@@ -7,12 +7,14 @@ coordinategroup_buttons = (
title='Add',
icon_class='mdi mdi-plus-thick',
color=ButtonColorChoices.GREEN,
permissions=['netbox_topology_views.add_coordinategroup']
),
PluginMenuButton(
link='plugins:netbox_topology_views:coordinategroup_import',
title='Import',
icon_class='mdi mdi-upload',
color=ButtonColorChoices.CYAN,
permissions=['netbox_topology_views.add_coordinategroup']
)
)
@@ -22,12 +24,14 @@ coordinate_buttons = (
title='Add',
icon_class='mdi mdi-plus-thick',
color=ButtonColorChoices.GREEN,
permissions=['netbox_topology_views.add_coordinate']
),
PluginMenuButton(
link='plugins:netbox_topology_views:coordinate_import',
title='Import',
icon_class='mdi mdi-upload',
color=ButtonColorChoices.CYAN,
permissions=['netbox_topology_views.add_coordinate']
)
)
@@ -37,15 +41,15 @@ menu = PluginMenu(
groups=(
('TOPOLOGY',
(
PluginMenuItem(link="plugins:netbox_topology_views:home", link_text="Topology"),
PluginMenuItem(link="plugins:netbox_topology_views:coordinategroup_list", link_text="Coordinate Groups", buttons=coordinategroup_buttons),
PluginMenuItem(link="plugins:netbox_topology_views:coordinate_list", link_text="Coordinates", buttons=coordinate_buttons),
PluginMenuItem(link="plugins:netbox_topology_views:home", link_text="Topology", permissions=["dcim.view_site", "dcim.view_device"]),
PluginMenuItem(link="plugins:netbox_topology_views:coordinategroup_list", link_text="Coordinate Groups", buttons=coordinategroup_buttons, permissions=['netbox_topology_views.view_coordinategroup']),
PluginMenuItem(link="plugins:netbox_topology_views:coordinate_list", link_text="Coordinates", buttons=coordinate_buttons, permissions=['netbox_topology_views.view_coordinate']),
),
),
('PREFERENCES',
(
PluginMenuItem(link="plugins:netbox_topology_views:images", link_text="Images"),
PluginMenuItem(link="plugins:netbox_topology_views:individualoptions", link_text="Individual Options"),
PluginMenuItem(link="plugins:netbox_topology_views:images", link_text="Images", permissions=[ "dcim.view_site","dcim.view_device_role"]),
PluginMenuItem(link="plugins:netbox_topology_views:individualoptions", link_text="Individual Options", permissions=['netbox_topology_views.change_individualoptions']),
),
),
),
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "netbox_topology_views",
"version": "3.6.0",
"version": "3.6.2",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "netbox_topology_views",
"version": "3.6.0",
"version": "3.6.2",
"dependencies": {
"vis-data": "^7.1.6",
"vis-network": "^9.1.6",
@@ -1,7 +1,7 @@
{
"private": true,
"name": "netbox_topology_views",
"version": "3.6.0",
"version": "3.7.0",
"scripts": {
"bundle": "node bundle.js",
"bundle:styles": "node bundle.js --styles",
+1 -1
View File
@@ -14,7 +14,7 @@ urlpatterns = (
# Coordinate Group
path("coordinate-groups/", views.CoordinateGroupListView.as_view(), name="coordinategroup_list"),
path("coordinate-groups/add/", views.CoordinateGroupAddView.as_view(), name="coordinategroup_add"),
path('coordinate/import/', views.CoordinateGroupBulkImportView.as_view(), name='coordinategroup_import'),
path('coordinate-groups/import/', views.CoordinateGroupBulkImportView.as_view(), name='coordinategroup_import'),
path("coordinate-groups/<int:pk>/", views.CoordinateGroupView.as_view(), name="coordinategroup"),
path("coordinate-groups/<int:pk>/edit/", views.CoordinateGroupEditView.as_view(), name="coordinategroup_edit"),
path("coordinate-groups/<int:pk>/delete/", views.CoordinateGroupDeleteView.as_view(), name="coordinategroup_delete"),
+3 -3
View File
@@ -67,7 +67,7 @@ from netbox_topology_views.utils import (
def get_image_for_entity(entity: Union[Device, Circuit, PowerPanel, PowerFeed]):
is_device = isinstance(entity, Device)
query = (
{"object_id": entity.device_role_id}
{"object_id": entity.role_id}
if is_device
else {"content_type_id": ContentType.objects.get_for_model(entity).pk}
)
@@ -653,7 +653,7 @@ class TopologyHomeView(PermissionRequiredMixin, View):
def get(self, request):
self.filterset = DeviceFilterSet
self.queryset = Device.objects.all().select_related(
"device_type", "device_role"
"device_type", "role"
)
self.queryset = self.filterset(request.GET, self.queryset).qs
self.model = self.queryset.model
@@ -694,7 +694,7 @@ class TopologyHomeView(PermissionRequiredMixin, View):
preselected_tags = IndividualOptions.objects.get(id=individualOptions.id).preselected_tags.all().values_list(Lower('name'), flat=True)
q = QueryDict(mutable=True)
q.setlist("device_role_id", list(preselected_device_roles))
q.setlist("role_id", list(preselected_device_roles))
q.setlist("tag", list(preselected_tags))
if individualOptions.save_coords: q['save_coords'] = "on"
+1 -1
View File
@@ -7,7 +7,7 @@ long_description = readme.read_text()
setup(
name="netbox-topology-views",
version="3.6.0",
version="3.7.0",
description="An NetBox plugin to create Topology maps",
long_description=long_description,
long_description_content_type="text/markdown",