diff --git a/netbox_access_lists/templates/netbox_access_lists/accesslist.html b/netbox_access_lists/templates/netbox_access_lists/accesslist.html
new file mode 100644
index 0000000..8da0355
--- /dev/null
+++ b/netbox_access_lists/templates/netbox_access_lists/accesslist.html
@@ -0,0 +1,43 @@
+{% extends 'generic/object.html' %}
+{% load render_table from django_tables2 %}
+
+{% block content %}
+
+
+
+
+
+
+
+ | Name |
+ {{ object.name }} |
+
+
+ | Default Action |
+ {{ object.get_default_action_display }} |
+
+
+ | Rules |
+ {{ object.rules.count }} |
+
+
+
+
+ {% include 'inc/panels/custom_fields.html' %}
+
+
+ {% include 'inc/panels/tags.html' %}
+ {% include 'inc/panels/comments.html' %}
+
+
+
+
+
+
+
+ {% render_table rules_table %}
+
+
+
+
+{% endblock content %}
diff --git a/netbox_access_lists/templates/netbox_access_lists/accesslistrule.html b/netbox_access_lists/templates/netbox_access_lists/accesslistrule.html
new file mode 100644
index 0000000..83b11aa
--- /dev/null
+++ b/netbox_access_lists/templates/netbox_access_lists/accesslistrule.html
@@ -0,0 +1,76 @@
+{% extends 'generic/object.html' %}
+
+{% block content %}
+
+
+
+
+
+
+
+ | Access List |
+
+ {{ object.access_list }}
+ |
+
+
+ | Index |
+ {{ object.index }} |
+
+
+ | Description |
+ {{ object.description|placeholder }} |
+
+
+
+
+ {% include 'inc/panels/custom_fields.html' %}
+ {% include 'inc/panels/tags.html' %}
+
+
+
+
+
+
+
+ | Protocol |
+ {{ object.get_protocol_display }} |
+
+
+ | Source Prefix |
+
+ {% if object.source_prefix %}
+ {{ object.source_prefix }}
+ {% else %}
+ {{ ''|placeholder }}
+ {% endif %}
+ |
+
+
+ | Source Ports |
+ {{ object.source_ports|join:", "|placeholder }} |
+
+
+ | Destination Prefix |
+
+ {% if object.destination_prefix %}
+ {{ object.destination_prefix }}
+ {% else %}
+ {{ ''|placeholder }}
+ {% endif %}
+ |
+
+
+ | Destination Ports |
+ {{ object.destination_ports|join:", "|placeholder }} |
+
+
+ | Action |
+ {{ object.get_action_display }} |
+
+
+
+
+
+
+{% endblock content %}
diff --git a/netbox_access_lists/views.py b/netbox_access_lists/views.py
index 0f7f134..db91077 100644
--- a/netbox_access_lists/views.py
+++ b/netbox_access_lists/views.py
@@ -11,6 +11,14 @@ from . import forms, models, tables
class AccessListView(generic.ObjectView):
queryset = models.AccessList.objects.all()
+ def get_extra_context(self, request, instance):
+ table = tables.AccessListRuleTable(instance.rules.all())
+ table.configure(request)
+
+ return {
+ 'rules_table': table,
+ }
+
class AccessListListView(generic.ObjectListView):
queryset = models.AccessList.objects.annotate(