diff --git a/netbox/utilities/templates/buttons/export.html b/netbox/utilities/templates/buttons/export.html index e7e246739..5a8f89758 100644 --- a/netbox/utilities/templates/buttons/export.html +++ b/netbox/utilities/templates/buttons/export.html @@ -12,5 +12,9 @@
  • {{ et.name }}
  • {% endfor %} {% endif %} + {% if add_exporttemplate_link %} +
  • +
  • Add export template...
  • + {% endif %} diff --git a/netbox/utilities/templatetags/buttons.py b/netbox/utilities/templatetags/buttons.py index c486dd2e5..e7ebd26a0 100644 --- a/netbox/utilities/templatetags/buttons.py +++ b/netbox/utilities/templatetags/buttons.py @@ -82,13 +82,18 @@ def import_button(url): @register.inclusion_tag('buttons/export.html', takes_context=True) def export_button(context, content_type=None): + add_exporttemplate_link = None + if content_type is not None: user = context['request'].user export_templates = ExportTemplate.objects.restrict(user, 'view').filter(content_type=content_type) + if user.is_staff and user.has_perm('extras.add_exporttemplate'): + add_exporttemplate_link = f"{reverse('admin:extras_exporttemplate_add')}?content_type={content_type.pk}" else: export_templates = [] return { 'url_params': context['request'].GET, 'export_templates': export_templates, + 'add_exporttemplate_link': add_exporttemplate_link, }