diff --git a/netbox/core/tables/plugins.py b/netbox/core/tables/plugins.py
index e1b80af42..8903227fe 100644
--- a/netbox/core/tables/plugins.py
+++ b/netbox/core/tables/plugins.py
@@ -1,10 +1,8 @@
import django_tables2 as tables
-from django.urls import reverse
-from django.utils.safestring import mark_safe
from django.utils.translation import gettext_lazy as _
from netbox.tables import BaseTable, columns
-from .template_code import PLUGIN_IS_INSTALLED
+from .template_code import PLUGIN_IS_INSTALLED, PLUGIN_NAME_TEMPLATE
__all__ = (
'CatalogPluginTable',
@@ -12,12 +10,6 @@ __all__ = (
)
-PLUGIN_NAME_TEMPLATE = """
-
-{{ record.title_long }}
-"""
-
-
class PluginVersionTable(BaseTable):
version = tables.Column(
verbose_name=_('Version')
@@ -93,10 +85,4 @@ class CatalogPluginTable(BaseTable):
)
# List installed plugins first, then certified plugins, then
# everything else (with each tranche ordered alphabetically)
- order_by = ('-is_installed', '-is_certified', 'name')
-
- def render_title_long(self, value, record):
- if record.static:
- return value
- url = reverse('core:plugin', args=[record.config_name])
- return mark_safe(f"{value}")
+ order_by = ('-is_installed', '-is_certified', 'title_long')
diff --git a/netbox/core/tables/template_code.py b/netbox/core/tables/template_code.py
index f49231a39..dc604876f 100644
--- a/netbox/core/tables/template_code.py
+++ b/netbox/core/tables/template_code.py
@@ -27,6 +27,16 @@ PLUGIN_IS_INSTALLED = """
{% endif %}
"""
+PLUGIN_NAME_TEMPLATE = """
+{% load static %}
+{% if record.icon_url %}
+
+{% else %}
+
+{% endif %}
+{{ record.title_long }}
+"""
+
DATA_SOURCE_SYNC_BUTTON = """
{% load helpers %}
{% load i18n %}
diff --git a/netbox/project-static/img/plugin-default.svg b/netbox/project-static/img/plugin-default.svg
new file mode 100644
index 000000000..1493e72d4
--- /dev/null
+++ b/netbox/project-static/img/plugin-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file