22
22
<a href="{{ record.assigned_object.virtual_machine.get_absolute_url }}">{{ record.assigned_object.virtual_machine|placeholder }}</a>
23
23
{% endif %}
24
24
"""
25
-
25
+ COL_SOURCE_AND_DESTINATION_ASSIGNMENT = """
26
+ {% if record.#replaceme#_prefix %}
27
+ <a href="{{ record.#replaceme#_prefix.get_absolute_url }}">{{ record.#replaceme#_prefix|placeholder }}</a>
28
+ <span class="badge text-bg-grey">Prefix</span>
29
+ {% elif record.#replaceme#_iprange %}
30
+ <a href="{{ record.#replaceme#_iprange.get_absolute_url }}">{{ record.#replaceme#_iprange|placeholder }}</a>
31
+ <span class="badge text-bg-grey">IP-Range</span>
32
+ {% elif record.#replaceme#_ipaddress %}
33
+ <a href="{{ record.#replaceme#_ipaddress.get_absolute_url }}">{{ record.#replaceme#_ipaddress|placeholder }}</a>
34
+ <span class="badge text-bg-grey">IP-Address</span>
35
+ {% elif record.#replaceme#_aggregate %}
36
+ <a href="{{ record.#replaceme#_aggregate.get_absolute_url }}">{{ record.#replaceme#_aggregate|placeholder }}</a>
37
+ <span class="badge text-bg-grey">Aggregate</span>
38
+ {% elif record.#replaceme#_service %}
39
+ <a href="{{ record.#replaceme#_service.get_absolute_url }}">{{ record.#replaceme#_service|placeholder }}</a>
40
+ <span class="badge text-bg-grey">Service</span>
41
+ {% else %}
42
+ {{ ''|placeholder }}
43
+ {% endif %}
44
+ """
26
45
27
46
class AccessListTable (NetBoxTable ):
28
47
"""
@@ -139,6 +158,10 @@ class ACLStandardRuleTable(NetBoxTable):
139
158
tags = columns .TagColumn (
140
159
url_name = "plugins:netbox_acls:aclstandardrule_list" ,
141
160
)
161
+ source = tables .TemplateColumn (
162
+ template_code = COL_SOURCE_AND_DESTINATION_ASSIGNMENT .replace ('#replaceme#' , 'source' ),
163
+ order_by = ('source_prefix' , 'source_iprange' , 'source_ipaddress' , 'source_aggregate' , 'source_service' )
164
+ )
142
165
143
166
class Meta (NetBoxTable .Meta ):
144
167
model = ACLStandardRule
@@ -151,14 +174,14 @@ class Meta(NetBoxTable.Meta):
151
174
"remark" ,
152
175
"tags" ,
153
176
"description" ,
154
- "source_prefix " ,
177
+ "source " ,
155
178
)
156
179
default_columns = (
157
180
"access_list" ,
158
181
"index" ,
159
182
"action" ,
160
183
"remark" ,
161
- "source_prefix " ,
184
+ "source " ,
162
185
"tags" ,
163
186
)
164
187
0 commit comments