Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions COMPATIBILITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

| Release | Minimum NetBox Version | Maximum NetBox Version |
|---------|------------------------|------------------------|
| 0.9.3 | 4.7.0 | 4.7.x |
| 0.9.2 | 4.6.0 | 4.6.x |
| 0.9.1 | 4.5.0 | 4.5.x |
| 0.8.0 | 4.4.0 | 4.4.x |
Expand Down
12 changes: 12 additions & 0 deletions netbox-plugin.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,18 @@
version: 0.1
package_name: netbox-floorplan-plugin
compatibility:
- release: 0.9.3
netbox_min: 4.7.0
netbox_max: 4.7.99
- release: 0.9.2
netbox_min: 4.6.0
netbox_max: 4.6.99
- release: 0.9.1
netbox_min: 4.5.0
netbox_max: 4.5.99
- release: 0.8.0
netbox_min: 4.4.0
netbox_max: 4.4.99
- release: 0.7.0
netbox_min: 4.3.0
netbox_max: 4.3.99
Expand Down
4 changes: 2 additions & 2 deletions netbox_floorplan/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ class FloorplanConfig(PluginConfig):
description = ""
version = __version__
base_url = "floorplan"
min_version = "4.6.0"
max_version = "4.6.99"
min_version = "4.7.0"
max_version = "4.7.99"


config = FloorplanConfig
1 change: 1 addition & 0 deletions netbox_floorplan/api/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@ class FloorplanViewSet(NetBoxModelViewSet):
class FloorplanImageViewSet(NetBoxModelViewSet):
queryset = models.FloorplanImage.objects.prefetch_related('tags')
serializer_class = FloorplanImageSerializer
filterset_class = filtersets.FloorplanImageFilterSet
27 changes: 25 additions & 2 deletions netbox_floorplan/filtersets.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
from django.db.models import Q

from netbox.filtersets import NetBoxModelFilterSet
from .models import Floorplan
from .models import Floorplan, FloorplanImage


class FloorplanFilterSet(NetBoxModelFilterSet):
Expand All @@ -8,4 +10,25 @@ class Meta:
fields = ['id', 'site', 'location']

def search(self, queryset, name, value):
return queryset.filter(description__icontains=value)
if not value.strip():
return queryset
return queryset.filter(
Q(site__name__icontains=value) |
Q(location__name__icontains=value) |
Q(assigned_image__name__icontains=value)
)


class FloorplanImageFilterSet(NetBoxModelFilterSet):
class Meta:
model = FloorplanImage
fields = ['id', 'name', 'external_url']

def search(self, queryset, name, value):
if not value.strip():
return queryset
return queryset.filter(
Q(name__icontains=value) |
Q(external_url__icontains=value) |
Q(comments__icontains=value)
)
2 changes: 1 addition & 1 deletion netbox_floorplan/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def size(self):
return None

@property
def filename(self):
def filename(self) -> str:
filename = self.file.name.rsplit('/', 1)[-1]
return filename

Expand Down
2 changes: 1 addition & 1 deletion netbox_floorplan/version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.9.2"
__version__ = "0.9.3"
4 changes: 2 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,6 @@ def get_version(rel_path):
packages=find_packages(),
include_package_data=True,
zip_safe=False,
min_version="4.6.0",
max_version="4.6.99"
min_version="4.7.0",
max_version="4.7.99"
)