Merge pull request #19272 from netbox-community/19266-fix-ip-copy-button

Fixes #19266: Fix copy-to-clipboard button for IP addresses
This commit is contained in:
bctiemann 2025-04-23 08:51:39 -04:00 committed by GitHub
commit 5b86d5d52a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 12 additions and 7 deletions

View File

@ -309,8 +309,8 @@ class IPRangeTable(TenancyColumnsMixin, NetBoxTable):
#
class IPAddressTable(TenancyColumnsMixin, NetBoxTable):
address = tables.Column(
linkify=True,
address = tables.TemplateColumn(
template_code=IPADDRESS_LINK,
verbose_name=_('IP Address')
)
vrf = tables.TemplateColumn(

View File

@ -25,18 +25,23 @@ PREFIX_LINK_WITH_DEPTH = """
{% endif %}
""" + PREFIX_LINK
# Annotate the ID of each IP address for copy-to-clipboard functionality
IPADDRESS_LINK = """
{% if record.address or record.start_address %}
<a href="{{ record.get_absolute_url }}">{{ record }}</a>
{% if record.address %}
<a href="{{ record.get_absolute_url }}" id="ipaddress_{{ record.pk}}">{{ record }}</a>
{% elif record.start_address %}
<a href="{{ record.get_absolute_url }}">{{ record }}</a>
{% elif perms.ipam.add_ipaddress %}
<a href="{% url 'ipam:ipaddress_add' %}?address={{ record.first_ip }}{% if object.vrf %}&vrf={{ object.vrf.pk }}{% endif %}{% if object.tenant %}&tenant={{ object.tenant.pk }}{% endif %}&return_url={% url 'ipam:prefix_ipaddresses' pk=object.pk %}" class="btn btn-sm btn-success">{{ record.title }}</a>
<a href="{% url 'ipam:ipaddress_add' %}?address={{ record.first_ip }}{% if object.vrf %}&vrf={{ object.vrf.pk }}{% endif %}{% if object.tenant %}&tenant={{ object.tenant.pk }}{% endif %}&return_url={% url 'ipam:prefix_ipaddresses' pk=object.pk %}" class="btn btn-sm btn-success">{{ record.title }}</a>
{% else %}
{{ record.title }}
{{ record.title }}
{% endif %}
"""
IPADDRESS_COPY_BUTTON = """
{% copy_content record.pk prefix="ipaddress_" %}
{% if record.address %}
{% copy_content record.pk prefix="ipaddress_" %}
{% endif %}
"""
IPADDRESS_ASSIGN_LINK = """