Standardize primary button sizing

This commit is contained in:
Jeremy Stretch 2024-01-03 15:54:04 -05:00
parent 13265ebd2c
commit 17f400e88f
108 changed files with 237 additions and 246 deletions

Binary file not shown.

View File

@ -1,3 +1,8 @@
// NetBox CSS Variables // NetBox CSS Variables
// Set the navigation sidebar width
$sidebar-width: 18rem; $sidebar-width: 18rem;
// Reduce the default button padding
$btn-padding-x: 0.5rem;
$btn-padding-y: 0.25rem;

View File

@ -23,12 +23,10 @@
</div> </div>
{# Form buttons #} {# Form buttons #}
<div class="noprint bulk-buttons"> <div class="btn-list d-print-none mt-2">
<div class="bulk-button-group">
{% if 'bulk_delete' in actions %} {% if 'bulk_delete' in actions %}
{% bulk_delete_button model query_params=request.GET %} {% bulk_delete_button model query_params=request.GET %}
{% endif %} {% endif %}
</div> </div>
</div>
</form> </form>
{% endblock %} {% endblock %}

View File

@ -8,7 +8,7 @@
{% block content %} {% block content %}
<div class="row"> <div class="row">
<div class="col col-md-12 text-end"> <div class="col col-md-12 text-end">
<a href="{% url 'account:usertoken_add' %}" class="btn btn-sm btn-primary my-3"> <a href="{% url 'account:usertoken_add' %}" class="btn btn-primary my-3">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add a Token" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add a Token" %}
</a> </a>
</div> </div>

View File

@ -14,7 +14,7 @@
{% block message %}{% endblock %} {% block message %}{% endblock %}
</div> </div>
<div class="card-footer text-end"> <div class="card-footer text-end">
<a href="{% url 'home' %}" class="btn btn-sm btn-primary">{% trans "Home Page" %}</a> <a href="{% url 'home' %}" class="btn btn-primary">{% trans "Home Page" %}</a>
</div> </div>
</div> </div>
</div> </div>

View File

@ -6,7 +6,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.circuits.add_circuit %} {% if perms.circuits.add_circuit %}
<a href="{% url 'circuits:circuit_add' %}?type={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'circuits:circuit_add' %}?type={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Circuit" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Circuit" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -5,20 +5,20 @@
<div class="card-header"> <div class="card-header">
<div class="float-md-end"> <div class="float-md-end">
{% if not termination and perms.circuits.add_circuittermination %} {% if not termination and perms.circuits.add_circuittermination %}
<a href="{% url 'circuits:circuittermination_add' %}?circuit={{ object.pk }}&term_side={{ side }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-success lh-1"> <a href="{% url 'circuits:circuittermination_add' %}?circuit={{ object.pk }}&term_side={{ side }}&return_url={{ object.get_absolute_url }}" class="btn btn-success lh-1">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add" %}
</a> </a>
{% endif %} {% endif %}
{% if termination and perms.circuits.change_circuittermination %} {% if termination and perms.circuits.change_circuittermination %}
<a href="{% url 'circuits:circuittermination_edit' pk=termination.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-warning lh-1"> <a href="{% url 'circuits:circuittermination_edit' pk=termination.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-warning lh-1">
<span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %} <span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %}
</a> </a>
<a href="{% url 'circuits:circuit_terminations_swap' pk=object.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary lh-1"> <a href="{% url 'circuits:circuit_terminations_swap' pk=object.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-primary lh-1">
<span class="mdi mdi-swap-vertical" aria-hidden="true"></span> {% trans "Swap" %} <span class="mdi mdi-swap-vertical" aria-hidden="true"></span> {% trans "Swap" %}
</a> </a>
{% endif %} {% endif %}
{% if termination and perms.circuits.delete_circuittermination %} {% if termination and perms.circuits.delete_circuittermination %}
<a href="{% url 'circuits:circuittermination_delete' pk=termination.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-danger lh-1"> <a href="{% url 'circuits:circuittermination_delete' pk=termination.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-danger lh-1">
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> {% trans "Delete" %} <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> {% trans "Delete" %}
</a> </a>
{% endif %} {% endif %}
@ -55,23 +55,23 @@
{{ peer|linkify }}{% if not forloop.last %},{% endif %} {{ peer|linkify }}{% if not forloop.last %},{% endif %}
{% endfor %} {% endfor %}
<div class="mt-1"> <div class="mt-1">
<a href="{% url 'circuits:circuittermination_trace' pk=termination.pk %}" class="btn btn-primary btn-sm lh-1" title="{% trans "Trace" %}"> <a href="{% url 'circuits:circuittermination_trace' pk=termination.pk %}" class="btn btn-primary lh-1" title="{% trans "Trace" %}">
<i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i> {% trans "Trace" %} <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i> {% trans "Trace" %}
</a> </a>
{% if perms.dcim.change_cable %} {% if perms.dcim.change_cable %}
<a href="{% url 'dcim:cable_edit' pk=termination.cable.pk %}?return_url={{ termination.circuit.get_absolute_url }}" title="{% trans "Edit cable" %}" class="btn btn-warning btn-sm"> <a href="{% url 'dcim:cable_edit' pk=termination.cable.pk %}?return_url={{ termination.circuit.get_absolute_url }}" title="{% trans "Edit cable" %}" class="btn btn-warning">
<i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> {% trans "Edit" %} <i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> {% trans "Edit" %}
</a> </a>
{% endif %} {% endif %}
{% if perms.dcim.delete_cable %} {% if perms.dcim.delete_cable %}
<a href="{% url 'dcim:cable_delete' pk=termination.cable.pk %}?return_url={{ termination.circuit.get_absolute_url }}" title="{% trans "Remove cable" %}" class="btn btn-danger btn-sm lh-1"> <a href="{% url 'dcim:cable_delete' pk=termination.cable.pk %}?return_url={{ termination.circuit.get_absolute_url }}" title="{% trans "Remove cable" %}" class="btn btn-danger lh-1">
<i class="mdi mdi-ethernet-cable-off" aria-hidden="true"></i> {% trans "Disconnect" %} <i class="mdi mdi-ethernet-cable-off" aria-hidden="true"></i> {% trans "Disconnect" %}
</a> </a>
{% endif %} {% endif %}
</div> </div>
{% elif perms.dcim.add_cable %} {% elif perms.dcim.add_cable %}
<div class="dropdown"> <div class="dropdown">
<button type="button" class="btn btn-success btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-success dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu"> <ul class="dropdown-menu">

View File

@ -7,7 +7,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.circuits.add_circuit %} {% if perms.circuits.add_circuit %}
<a href="{% url 'circuits:circuit_add' %}?provider={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'circuits:circuit_add' %}?provider={{ object.pk }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add circuit" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add circuit" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -10,13 +10,13 @@
{% if object.ready_for_sync %} {% if object.ready_for_sync %}
<form action="{% url 'core:datasource_sync' pk=object.pk %}" method="post"> <form action="{% url 'core:datasource_sync' pk=object.pk %}" method="post">
{% csrf_token %} {% csrf_token %}
<button type="submit" class="btn btn-sm btn-primary"> <button type="submit" class="btn btn-primary">
<i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync" %} <i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync" %}
</button> </button>
</form> </form>
{% else %} {% else %}
<span class="inline-block" tabindex="0" data-bs-toggle="tooltip" data-bs-delay="100" data-bs-placement="bottom"> <span class="inline-block" tabindex="0" data-bs-toggle="tooltip" data-bs-delay="100" data-bs-placement="bottom">
<button class="btn btn-sm btn-primary" disabled> <button class="btn btn-primary" disabled>
<i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync" %} <i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync" %}
</button> </button>
</span> </span>

View File

@ -17,7 +17,7 @@
<div class="text-center my-3"> <div class="text-center my-3">
<object data="{{ svg_url }}" class="rack_elevation"></object> <object data="{{ svg_url }}" class="rack_elevation"></object>
<div> <div>
<a class="btn btn-outline-primary btn-sm my-3" href="{{ svg_url }}"> <a class="btn btn-outline-primary my-3" href="{{ svg_url }}">
<i class="mdi mdi-file-download"></i> {% trans "Download SVG" %} <i class="mdi mdi-file-download"></i> {% trans "Download SVG" %}
</a> </a>
</div> </div>

View File

@ -10,7 +10,7 @@
{% endif %} {% endif %}
{% if 'bulk_rename' in actions %} {% if 'bulk_rename' in actions %}
{% with bulk_rename_view=model|validated_viewname:"bulk_rename" %} {% with bulk_rename_view=model|validated_viewname:"bulk_rename" %}
<button type="submit" name="_rename" formaction="{% url bulk_rename_view %}" class="btn btn-outline-warning btn-sm"> <button type="submit" name="_rename" formaction="{% url bulk_rename_view %}" class="btn btn-outline-warning">
<i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename Selected" %} <i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename Selected" %}
</button> </button>
{% endwith %} {% endwith %}

View File

@ -67,7 +67,7 @@
{% trans "Not Connected" %} {% trans "Not Connected" %}
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<div class="dropdown float-end"> <div class="dropdown float-end">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">

View File

@ -67,7 +67,7 @@
{% trans "Not Connected" %} {% trans "Not Connected" %}
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<div class="dropdown float-end"> <div class="dropdown float-end">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">

View File

@ -32,7 +32,7 @@
{% if object.rack %} {% if object.rack %}
{{ object.rack|linkify }} {{ object.rack|linkify }}
<div class="position-absolute top-50 end-0 translate-middle-y noprint"> <div class="position-absolute top-50 end-0 translate-middle-y noprint">
<a href="{{ object.rack.get_absolute_url }}?device={{ object.pk }}" class="btn btn-primary btn-sm" title="{% trans "Highlight device" %}"> <a href="{{ object.rack.get_absolute_url }}?device={{ object.pk }}" class="btn btn-primary" title="{% trans "Highlight device" %}">
<i class="mdi mdi-view-day-outline"></i> <i class="mdi mdi-view-day-outline"></i>
</a> </a>
</div> </div>
@ -66,7 +66,7 @@
{% if object.latitude and object.longitude %} {% if object.latitude and object.longitude %}
{% if config.MAPS_URL %} {% if config.MAPS_URL %}
<div class="position-absolute top-50 end-0 translate-middle-y noprint"> <div class="position-absolute top-50 end-0 translate-middle-y noprint">
<a href="{{ config.MAPS_URL }}{{ object.latitude }},{{ object.longitude }}" target="_blank" class="btn btn-primary btn-sm"> <a href="{{ config.MAPS_URL }}{{ object.latitude }},{{ object.longitude }}" target="_blank" class="btn btn-primary">
<i class="mdi mdi-map-marker"></i> {% trans "Map It" %} <i class="mdi mdi-map-marker"></i> {% trans "Map It" %}
</a> </a>
</div> </div>
@ -149,7 +149,7 @@
</table> </table>
</div> </div>
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{{ object.virtual_chassis.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{{ object.virtual_chassis.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-arrow-right-bold" aria-hidden="true"></span> {% trans "View Virtual Chassis" %} <span class="mdi mdi-arrow-right-bold" aria-hidden="true"></span> {% trans "View Virtual Chassis" %}
</a> </a>
</div> </div>
@ -166,7 +166,7 @@
></div> ></div>
{% if perms.dcim.add_virtualdevicecontext %} {% if perms.dcim.add_virtualdevicecontext %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:virtualdevicecontext_add' %}?device={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:virtualdevicecontext_add' %}?device={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Create VDC" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Create VDC" %}
</a> </a>
</div> </div>
@ -308,7 +308,7 @@
></div> ></div>
{% if perms.ipam.add_service %} {% if perms.ipam.add_service %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'ipam:service_add' %}?device={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:service_add' %}?device={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add a service" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add a service" %}
</a> </a>
</div> </div>

View File

@ -17,7 +17,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.change_device %} {% if perms.dcim.change_device %}
<div class="dropdown"> <div class="dropdown">
<button id="add-components" type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <button id="add-components" type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %}
</button> </button>
<ul class="dropdown-menu" aria-labeled-by="add-components"> <ul class="dropdown-menu" aria-labeled-by="add-components">

View File

@ -6,7 +6,7 @@
{% if 'bulk_edit' in actions and bulk_edit_view %} {% if 'bulk_edit' in actions and bulk_edit_view %}
<button type="submit" name="_edit" <button type="submit" name="_edit"
formaction="{% url bulk_edit_view %}?device={{ object.pk }}&return_url={{ return_url }}" formaction="{% url bulk_edit_view %}?device={{ object.pk }}&return_url={{ return_url }}"
class="btn btn-warning btn-sm"> class="btn btn-warning">
<i class="mdi mdi-pencil" aria-hidden="true"></i> Edit Selected <i class="mdi mdi-pencil" aria-hidden="true"></i> Edit Selected
</button> </button>
{% endif %} {% endif %}
@ -15,7 +15,7 @@
{% if 'bulk_rename' in actions and bulk_rename_view %} {% if 'bulk_rename' in actions and bulk_rename_view %}
<button type="submit" name="_rename" <button type="submit" name="_rename"
formaction="{% url bulk_rename_view %}?return_url={{ return_url }}" formaction="{% url bulk_rename_view %}?return_url={{ return_url }}"
class="btn btn-outline-warning btn-sm"> class="btn btn-outline-warning">
<i class="mdi mdi-pencil-outline" aria-hidden="true"></i> Rename <i class="mdi mdi-pencil-outline" aria-hidden="true"></i> Rename
</button> </button>
{% endif %} {% endif %}

View File

@ -8,7 +8,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -18,9 +18,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_consoleport %} {% if perms.dcim.add_consoleport %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:consoleport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_consoleports' pk=object.pk %}" <a href="{% url 'dcim:consoleport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_consoleports' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Console Ports" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Console Ports" %}
</a> </a>
</div> </div>

View File

@ -8,7 +8,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -18,9 +18,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_consoleserverport %} {% if perms.dcim.add_consoleserverport %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:consoleserverport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_consoleserverports' pk=object.pk %}" <a href="{% url 'dcim:consoleserverport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_consoleserverports' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Console Server Ports" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Console Server Ports" %}
</a> </a>
</div> </div>

View File

@ -4,9 +4,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_devicebay %} {% if perms.dcim.add_devicebay %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:devicebay_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_devicebays' pk=object.pk %}" <a href="{% url 'dcim:devicebay_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_devicebays' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Device Bays" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Device Bays" %}
</a> </a>
</div> </div>

View File

@ -8,7 +8,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -18,9 +18,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_frontport %} {% if perms.dcim.add_frontport %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:frontport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_frontports' pk=object.pk %}" <a href="{% url 'dcim:frontport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_frontports' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Front Ports" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Front Ports" %}
</a> </a>
</div> </div>

View File

@ -2,7 +2,7 @@
{% load i18n %} {% load i18n %}
{% block extra_table_controls %} {% block extra_table_controls %}
<button class="btn btn-sm btn-outline-dark dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false"> <button class="btn btn-outline-dark dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-eye"></i> <i class="mdi mdi-eye"></i>
</button> </button>
<ul class="dropdown-menu"> <ul class="dropdown-menu">

View File

@ -12,7 +12,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -22,11 +22,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_interface %} {% if perms.dcim.add_interface %}
<div class="bulk-button-group">
<a href="{% url 'dcim:interface_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_interfaces' pk=object.pk %}" <a href="{% url 'dcim:interface_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_interfaces' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Interfaces" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Interfaces" %}
</a> </a>
</div>
{% endif %} {% endif %}
{% endblock bulk_extra_controls %} {% endblock bulk_extra_controls %}

View File

@ -4,9 +4,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_inventoryitem %} {% if perms.dcim.add_inventoryitem %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:inventoryitem_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_inventory' pk=object.pk %}" <a href="{% url 'dcim:inventoryitem_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_inventory' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Inventory Item" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Inventory Item" %}
</a> </a>
</div> </div>

View File

@ -4,9 +4,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_modulebay %} {% if perms.dcim.add_modulebay %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:modulebay_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_modulebays' pk=object.pk %}" <a href="{% url 'dcim:modulebay_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_modulebays' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Module Bays" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Module Bays" %}
</a> </a>
</div> </div>

View File

@ -8,7 +8,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -18,9 +18,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_poweroutlet %} {% if perms.dcim.add_poweroutlet %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:poweroutlet_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_poweroutlets' pk=object.pk %}" <a href="{% url 'dcim:poweroutlet_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_poweroutlets' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Power Outlets" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Power Outlets" %}
</a> </a>
</div> </div>

View File

@ -8,7 +8,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -18,9 +18,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_powerport %} {% if perms.dcim.add_powerport %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:powerport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_powerports' pk=object.pk %}" <a href="{% url 'dcim:powerport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_powerports' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Power Port" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Power Port" %}
</a> </a>
</div> </div>

View File

@ -8,7 +8,7 @@
{% if 'bulk_disconnect' in actions and bulk_disconnect_view %} {% if 'bulk_disconnect' in actions and bulk_disconnect_view %}
<button type="submit" name="_disconnect" <button type="submit" name="_disconnect"
formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}" formaction="{% url bulk_disconnect_view %}?return_url={{ return_url }}"
class="btn btn-outline-danger btn-sm"> class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
@ -18,9 +18,9 @@
{% block bulk_extra_controls %} {% block bulk_extra_controls %}
{{ block.super }} {{ block.super }}
{% if perms.dcim.add_rearport %} {% if perms.dcim.add_rearport %}
<div class="bulk-button-group"> <div class="btn-group" role="group">
<a href="{% url 'dcim:rearport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_rearports' pk=object.pk %}" <a href="{% url 'dcim:rearport_add' %}?device={{ object.pk }}&return_url={% url 'dcim:device_rearports' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Rear Ports" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Rear Ports" %}
</a> </a>
</div> </div>

View File

@ -53,7 +53,7 @@
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">
<div class="float-end"> <div class="float-end">
<a href="?export=True" class="btn btn-sm btn-primary" role="button"> <a href="?export=True" class="btn btn-primary" role="button">
<i class="mdi mdi-download" aria-hidden="true"></i> {% trans "Download" %} <i class="mdi mdi-download" aria-hidden="true"></i> {% trans "Download" %}
</a> </a>
</div> </div>

View File

@ -5,7 +5,7 @@
{% block bulk_buttons %} {% block bulk_buttons %}
{% if perms.dcim.change_device %} {% if perms.dcim.change_device %}
<div class="dropdown"> <div class="dropdown">
<button type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %}
</button> </button>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
@ -78,7 +78,7 @@
{% if 'bulk_edit' in actions %} {% if 'bulk_edit' in actions %}
<div class="btn-group" role="group"> <div class="btn-group" role="group">
{% bulk_edit_button model query_params=request.GET %} {% bulk_edit_button model query_params=request.GET %}
<button type="submit" name="_rename" formaction="{% url 'dcim:device_bulk_rename' %}?return_url={% url 'dcim:device_list' %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-outline-warning btn-sm"> <button type="submit" name="_rename" formaction="{% url 'dcim:device_bulk_rename' %}?return_url={% url 'dcim:device_list' %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-outline-warning">
<i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename" %} <i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename" %}
</button> </button>
</div> </div>

View File

@ -10,7 +10,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_device %} {% if perms.dcim.add_device %}
<a href="{% url 'dcim:device_add' %}?role={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:device_add' %}?role={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Device" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Device" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -14,7 +14,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.change_devicetype %} {% if perms.dcim.change_devicetype %}
<div class="dropdown"> <div class="dropdown">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle"data-bs-toggle="dropdown" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle"data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %}
</button> </button>
<ul class="dropdown-menu"> <ul class="dropdown-menu">

View File

@ -14,18 +14,18 @@
</div> </div>
<div class="card-footer noprint"> <div class="card-footer noprint">
{% if table.rows %} {% if table.rows %}
<button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_rename" %}?return_url={{ return_url }}" class="btn btn-sm btn-warning"> <button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_rename" %}?return_url={{ return_url }}" class="btn btn-warning">
<span class="mdi mdi-pencil-outline" aria-hidden="true"></span> {% trans "Rename" %} <span class="mdi mdi-pencil-outline" aria-hidden="true"></span> {% trans "Rename" %}
</button> </button>
<button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_edit" %}?return_url={{ return_url }}" class="btn btn-sm btn-warning"> <button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_edit" %}?return_url={{ return_url }}" class="btn btn-warning">
<span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %} <span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %}
</button> </button>
<button type="submit" name="_delete" formaction="{% url table.Meta.model|viewname:"bulk_delete" %}?return_url={{ return_url }}" class="btn btn-sm btn-danger"> <button type="submit" name="_delete" formaction="{% url table.Meta.model|viewname:"bulk_delete" %}?return_url={{ return_url }}" class="btn btn-danger">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %} <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %}
</button> </button>
{% endif %} {% endif %}
<div class="float-end"> <div class="float-end">
<a href="{% url table.Meta.model|viewname:"add" %}?device_type={{ object.pk }}&return_url={{ return_url }}" class="btn btn-primary btn-sm"> <a href="{% url table.Meta.model|viewname:"add" %}?device_type={{ object.pk }}&return_url={{ return_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> <i class="mdi mdi-plus-thick" aria-hidden="true"></i>
{% trans "Add" %} {{ title }} {% trans "Add" %} {{ title }}
</a> </a>

View File

@ -84,7 +84,7 @@
<th scope="row">{% trans "Cable" %}</th> <th scope="row">{% trans "Cable" %}</th>
<td> <td>
{{ object.cable|linkify }} {{ object.cable|linkify }}
<a href="{% url 'dcim:frontport_trace' pk=object.pk %}" class="btn btn-primary btn-sm lh-1" title="{% trans "Trace" %}"> <a href="{% url 'dcim:frontport_trace' pk=object.pk %}" class="btn btn-primary lh-1" title="{% trans "Trace" %}">
<i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i> <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i>
</a> </a>
</td> </td>
@ -105,7 +105,7 @@
{% trans "Not Connected" %} {% trans "Not Connected" %}
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<div class="dropdown float-end"> <div class="dropdown float-end">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">

View File

@ -4,7 +4,7 @@
<th scope="row">{% trans "Cable" %}</th> <th scope="row">{% trans "Cable" %}</th>
<td> <td>
{{ object.cable|linkify }} {{ object.cable|linkify }}
<a href="{% url trace_url pk=object.pk %}" class="btn btn-primary btn-sm lh-1" title="{% trans "Trace" %}"> <a href="{% url trace_url pk=object.pk %}" class="btn btn-primary lh-1" title="{% trans "Trace" %}">
<i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i> <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i>
</a> </a>
</td> </td>

View File

@ -41,10 +41,10 @@
<tr> <tr>
<td colspan="2"></td> <td colspan="2"></td>
<td> <td>
<a href="#" id="clear_untagged_vlan" class="btn btn-outline-warning btn-sm">{% trans "Clear" %}</a> <a href="#" id="clear_untagged_vlan" class="btn btn-outline-warning">{% trans "Clear" %}</a>
</td> </td>
<td> <td>
<a href="#" id="clear_tagged_vlans" class="btn btn-warning btn-sm">{% trans "Clear All" %}</a> <a href="#" id="clear_tagged_vlans" class="btn btn-warning">{% trans "Clear All" %}</a>
</td> </td>
</tr> </tr>
{% endif %} {% endif %}

View File

@ -21,12 +21,12 @@
<td>{{ item.role|linkify|placeholder }}</td> <td>{{ item.role|linkify|placeholder }}</td>
<td class="text-end noprint"> <td class="text-end noprint">
{% if perms.dcim.change_inventoryitem %} {% if perms.dcim.change_inventoryitem %}
<a href="{% url 'dcim:inventoryitem_edit' pk=item.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-warning btn-sm lh-1" title="{% trans "Edit" %}"> <a href="{% url 'dcim:inventoryitem_edit' pk=item.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-warning lh-1" title="{% trans "Edit" %}">
<i class="mdi mdi-pencil" aria-hidden="true"></i> <i class="mdi mdi-pencil" aria-hidden="true"></i>
</a> </a>
{% endif %} {% endif %}
{% if perms.ipam.delete_inventoryitem %} {% if perms.ipam.delete_inventoryitem %}
<a href="{% url 'dcim:inventoryitem_delete' pk=item.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-danger btn-sm lh-1" title="{% trans "Delete" %}"> <a href="{% url 'dcim:inventoryitem_delete' pk=item.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-danger lh-1" title="{% trans "Delete" %}">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i>
</a> </a>
{% endif %} {% endif %}
@ -42,7 +42,7 @@
</div> </div>
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
{% if perms.dcim.add_inventoryitem %} {% if perms.dcim.add_inventoryitem %}
<a href="{% url 'dcim:inventoryitem_add' %}?device={{ object.device.pk }}&component_type={{ object|content_type_id }}&component_id={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:inventoryitem_add' %}?device={{ object.device.pk }}&component_type={{ object|content_type_id }}&component_id={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Inventory Item" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Inventory Item" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -3,7 +3,7 @@
<object data="{% url 'dcim-api:rack-elevation' pk=object.pk %}?face={{face}}&render=svg{% if extra_params %}&{{ extra_params }}{% endif %}" class="rack_elevation"></object> <object data="{% url 'dcim-api:rack-elevation' pk=object.pk %}?face={{face}}&render=svg{% if extra_params %}&{{ extra_params }}{% endif %}" class="rack_elevation"></object>
</div> </div>
<div class="text-center mt-3"> <div class="text-center mt-3">
<a class="btn btn-outline-primary btn-sm" href="{% url 'dcim-api:rack-elevation' pk=object.pk %}?face={{face}}&render=svg{% if extra_params %}&{{ extra_params }}{% endif %}"> <a class="btn btn-outline-primary" href="{% url 'dcim-api:rack-elevation' pk=object.pk %}?face={{face}}&render=svg{% if extra_params %}&{{ extra_params }}{% endif %}">
<i class="mdi mdi-file-download"></i> {% trans "Download SVG" %} <i class="mdi mdi-file-download"></i> {% trans "Download SVG" %}
</a> </a>
</div> </div>

View File

@ -13,7 +13,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_interface and not object.is_virtual %} {% if perms.dcim.add_interface and not object.is_virtual %}
<a href="{% url 'dcim:interface_add' %}?device={{ object.device.pk }}&parent={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-success"> <a href="{% url 'dcim:interface_add' %}?device={{ object.device.pk }}&parent={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-success">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Child Interface" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Child Interface" %}
</a> </a>
{% endif %} {% endif %}
@ -157,7 +157,7 @@
<th scope="row">{% trans "Wireless Link" %}</th> <th scope="row">{% trans "Wireless Link" %}</th>
<td> <td>
{{ object.wireless_link|linkify }} {{ object.wireless_link|linkify }}
<a href="{% url 'dcim:interface_trace' pk=object.pk %}" class="btn btn-primary btn-sm lh-1" title="{% trans "Trace" %}"> <a href="{% url 'dcim:interface_trace' pk=object.pk %}" class="btn btn-primary lh-1" title="{% trans "Trace" %}">
<i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i> <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i>
</a> </a>
</td> </td>
@ -182,7 +182,7 @@
{% trans "Not Connected" %} {% trans "Not Connected" %}
{% if object.is_wired and perms.dcim.add_cable %} {% if object.is_wired and perms.dcim.add_cable %}
<div class="dropdown float-end"> <div class="dropdown float-end">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">
@ -202,7 +202,7 @@
</div> </div>
{% elif object.is_wireless and perms.wireless.add_wirelesslink %} {% elif object.is_wireless and perms.wireless.add_wirelesslink %}
<div class="dropdown float-end"> <div class="dropdown float-end">
<a href="{% url 'wireless:wirelesslink_add' %}?interface_a={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'wireless:wirelesslink_add' %}?interface_a={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-wifi-plus" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-wifi-plus" aria-hidden="true"></span> {% trans "Connect" %}
</a> </a>
</div> </div>
@ -355,7 +355,7 @@
></div> ></div>
{% if perms.ipam.add_ipaddress %} {% if perms.ipam.add_ipaddress %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'ipam:ipaddress_add' %}?device={{ object.device.pk }}&interface={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:ipaddress_add' %}?device={{ object.device.pk }}&interface={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add IP Address" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add IP Address" %}
</a> </a>
</div> </div>

View File

@ -13,7 +13,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_location %} {% if perms.dcim.add_location %}
<a href="{% url 'dcim:location_add' %}?site={{ object.site.pk }}&parent={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:location_add' %}?site={{ object.site.pk }}&parent={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Child Location" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Child Location" %}
</a> </a>
{% endif %} {% endif %}
@ -80,7 +80,7 @@
></div> ></div>
{% if perms.dcim.add_location %} {% if perms.dcim.add_location %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:location_add' %}?site={{ object.site.pk }}&parent={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'dcim:location_add' %}?site={{ object.site.pk }}&parent={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Location" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Location" %}
</a> </a>
</div> </div>
@ -94,7 +94,7 @@
></div> ></div>
{% if perms.dcim.add_device %} {% if perms.dcim.add_device %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:device_add' %}?site={{ object.site.pk }}&location={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'dcim:device_add' %}?site={{ object.site.pk }}&location={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Device" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Device" %}
</a> </a>
</div> </div>

View File

@ -7,7 +7,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_devicetype or perms.dcim.add_moduletype %} {% if perms.dcim.add_devicetype or perms.dcim.add_moduletype %}
<div class="dropdown"> <div class="dropdown">
<button id="add-components" type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <button id="add-components" type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add" %}
</button> </button>
<ul class="dropdown-menu" aria-labeled-by="add-components"> <ul class="dropdown-menu" aria-labeled-by="add-components">

View File

@ -14,7 +14,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.change_module %} {% if perms.dcim.change_module %}
<div class="dropdown"> <div class="dropdown">
<button id="add-components" type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <button id="add-components" type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %}
</button> </button>
<ul class="dropdown-menu" aria-labeled-by="add-components"> <ul class="dropdown-menu" aria-labeled-by="add-components">

View File

@ -14,7 +14,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.change_devicetype %} {% if perms.dcim.change_devicetype %}
<div class="dropdown"> <div class="dropdown">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle"data-bs-toggle="dropdown" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle"data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %}
</button> </button>
<ul class="dropdown-menu"> <ul class="dropdown-menu">

View File

@ -14,18 +14,18 @@
</div> </div>
<div class="card-footer noprint"> <div class="card-footer noprint">
{% if table.rows %} {% if table.rows %}
<button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_rename" %}?return_url={{ return_url }}" class="btn btn-sm btn-warning"> <button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_rename" %}?return_url={{ return_url }}" class="btn btn-warning">
<span class="mdi mdi-pencil-outline" aria-hidden="true"></span> {% trans "Rename" %} <span class="mdi mdi-pencil-outline" aria-hidden="true"></span> {% trans "Rename" %}
</button> </button>
<button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_edit" %}?return_url={{ return_url }}" class="btn btn-sm btn-warning"> <button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_edit" %}?return_url={{ return_url }}" class="btn btn-warning">
<span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %} <span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %}
</button> </button>
<button type="submit" name="_delete" formaction="{% url table.Meta.model|viewname:"bulk_delete" %}?return_url={{ return_url }}" class="btn btn-sm btn-danger"> <button type="submit" name="_delete" formaction="{% url table.Meta.model|viewname:"bulk_delete" %}?return_url={{ return_url }}" class="btn btn-danger">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %} <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %}
</button> </button>
{% endif %} {% endif %}
<div class="float-end"> <div class="float-end">
<a href="{% url table.Meta.model|viewname:"add" %}?module_type={{ object.pk }}&return_url={{ return_url }}" class="btn btn-primary btn-sm"> <a href="{% url table.Meta.model|viewname:"add" %}?module_type={{ object.pk }}&return_url={{ return_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> <i class="mdi mdi-plus-thick" aria-hidden="true"></i>
{% trans "Add" %} {{ title }} {% trans "Add" %} {{ title }}
</a> </a>

View File

@ -13,7 +13,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_device %} {% if perms.dcim.add_device %}
<a href="{% url 'dcim:device_add' %}?platform={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:device_add' %}?platform={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Device" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Device" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -132,7 +132,7 @@
{% if not object.mark_connected and not object.cable %} {% if not object.mark_connected and not object.cable %}
<div class="card-footer"> <div class="card-footer">
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<a href="{% url 'dcim:cable_add' %}?a_terminations_type=dcim.powerfeed&a_terminations={{ object.pk }}&b_terminations_type=dcim.powerport&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm float-end"> <a href="{% url 'dcim:cable_add' %}?a_terminations_type=dcim.powerfeed&a_terminations={{ object.pk }}&b_terminations_type=dcim.powerport&return_url={{ object.get_absolute_url }}" class="btn btn-primary float-end">
<i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> {% trans "Connect" %} <i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> {% trans "Connect" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -72,7 +72,7 @@
<div class="text-muted"> <div class="text-muted">
{% trans "Not Connected" %} {% trans "Not Connected" %}
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<a href="{% url 'dcim:cable_add' %}?a_terminations_type=dcim.poweroutlet&a_terminations={{ object.pk }}&b_terminations_type=dcim.powerport&return_url={{ object.get_absolute_url }}" title="{% trans "Connect" %}" class="btn btn-primary btn-sm float-end"> <a href="{% url 'dcim:cable_add' %}?a_terminations_type=dcim.poweroutlet&a_terminations={{ object.pk }}&b_terminations_type=dcim.powerport&return_url={{ object.get_absolute_url }}" title="{% trans "Connect" %}" class="btn btn-primary float-end">
<i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> {% trans "Connect" %} <i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> {% trans "Connect" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -57,23 +57,23 @@
></div> ></div>
<div class="card-footer noprint"> <div class="card-footer noprint">
{% if perms.dcim.change_powerfeed %} {% if perms.dcim.change_powerfeed %}
<button type="submit" name="_edit" formaction="{% url 'dcim:powerfeed_bulk_edit' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-warning btn-sm"> <button type="submit" name="_edit" formaction="{% url 'dcim:powerfeed_bulk_edit' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-warning">
<span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %} <span class="mdi mdi-pencil" aria-hidden="true"></span> {% trans "Edit" %}
</button> </button>
{% endif %} {% endif %}
{% if perms.dcim.delete_cable %} {% if perms.dcim.delete_cable %}
<button type="submit" name="_disconnect" formaction="{% url 'dcim:powerfeed_bulk_disconnect' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-outline-danger btn-sm"> <button type="submit" name="_disconnect" formaction="{% url 'dcim:powerfeed_bulk_disconnect' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-outline-danger">
<span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %} <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> {% trans "Disconnect" %}
</button> </button>
{% endif %} {% endif %}
{% if perms.dcim.delete_powerfeed %} {% if perms.dcim.delete_powerfeed %}
<button type="submit" name="_delete" formaction="{% url 'dcim:powerfeed_bulk_delete' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-danger btn-sm"> <button type="submit" name="_delete" formaction="{% url 'dcim:powerfeed_bulk_delete' %}?return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-danger">
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> {% trans "Delete" %} <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> {% trans "Delete" %}
</button> </button>
{% endif %} {% endif %}
{% if perms.dcim.add_powerfeed %} {% if perms.dcim.add_powerfeed %}
<div class="float-end"> <div class="float-end">
<a href="{% url 'dcim:powerfeed_add' %}?power_panel={{ object.pk }}&return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-primary btn-sm"> <a href="{% url 'dcim:powerfeed_add' %}?power_panel={{ object.pk }}&return_url={% url 'dcim:powerpanel' pk=object.pk %}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Power Feeds" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Power Feeds" %}
</a> </a>
</div> </div>

View File

@ -73,7 +73,7 @@
{% trans "Not Connected" %} {% trans "Not Connected" %}
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<span class="dropdown float-end"> <span class="dropdown float-end">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">

View File

@ -169,7 +169,7 @@
</div> </div>
<div class="col col-12 col-xl-7"> <div class="col col-12 col-xl-7">
<div class="text-end mb-4"> <div class="text-end mb-4">
<select class="btn btn-sm btn-outline-dark rack-view"> <select class="btn btn-outline-dark rack-view">
<option value="images-and-labels" selected="selected">{% trans "Images and Labels" %}</option> <option value="images-and-labels" selected="selected">{% trans "Images and Labels" %}</option>
<option value="images-only">{% trans "Images only" %}</option> <option value="images-only">{% trans "Images only" %}</option>
<option value="labels-only">{% trans "Labels only" %}</option> <option value="labels-only">{% trans "Labels only" %}</option>

View File

@ -17,14 +17,14 @@
{% block extra_controls %} {% block extra_controls %}
<div class="btn-group" role="group" aria-label="RackNavigation"> <div class="btn-group" role="group" aria-label="RackNavigation">
{% if prev_rack %} {% if prev_rack %}
<a href="{{ prev_rack.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{{ prev_rack.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-chevron-left" aria-hidden="true"></i> {{ prev_rack }} <i class="mdi mdi-chevron-left" aria-hidden="true"></i> {{ prev_rack }}
</a> </a>
{% endif %} {% endif %}
{% if peer_racks %} {% if peer_racks %}
<div class="btn-group" role="group"> <div class="btn-group" role="group">
<button class="btn btn-sm btn-primary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">{{ object }}</button> <button class="btn btn-primary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">{{ object }}</button>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
{% for peer_rack in peer_racks %} {% for peer_rack in peer_racks %}
<li><a class="dropdown-item{% if peer_rack.pk == object.pk %} active{% endif %}" href="{{ peer_rack.get_absolute_url }}">{{ peer_rack }}</a></li> <li><a class="dropdown-item{% if peer_rack.pk == object.pk %} active{% endif %}" href="{{ peer_rack.get_absolute_url }}">{{ peer_rack }}</a></li>
@ -34,7 +34,7 @@
{% endif %} {% endif %}
{% if next_rack %} {% if next_rack %}
<a href="{{ next_rack.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{{ next_rack.get_absolute_url }}" class="btn btn-primary">
{{ next_rack }} <i class="mdi mdi-chevron-right" aria-hidden="true"></i> {{ next_rack }} <i class="mdi mdi-chevron-right" aria-hidden="true"></i>
</a> </a>
{% endif %} {% endif %}

View File

@ -2,11 +2,9 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_device %} {% if perms.dcim.add_device %}
<div class="bulk-button-group">
<a href="{% url 'dcim:device_add' %}?rack={{ object.pk }}&site={{ object.site.pk }}&return_url={% url 'dcim:rack_nonracked_devices' pk=object.pk %}" <a href="{% url 'dcim:device_add' %}?rack={{ object.pk }}&site={{ object.site.pk }}&return_url={% url 'dcim:rack_nonracked_devices' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> Add non-racked device <i class="mdi mdi-plus-thick" aria-hidden="true"></i> Add non-racked device
</a> </a>
</div>
{% endif %} {% endif %}
{% endblock extra_controls %} {% endblock extra_controls %}

View File

@ -3,11 +3,9 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_rackreservation %} {% if perms.dcim.add_rackreservation %}
<div class="bulk-button-group">
<a href="{% url 'dcim:rackreservation_add' %}?rack={{ object.pk }}&return_url={% url 'dcim:rack_reservations' pk=object.pk %}" <a href="{% url 'dcim:rackreservation_add' %}?rack={{ object.pk }}&return_url={% url 'dcim:rack_reservations' pk=object.pk %}"
class="btn btn-primary btn-sm"> class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add reservation" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add reservation" %}
</a> </a>
</div>
{% endif %} {% endif %}
{% endblock extra_controls %} {% endblock extra_controls %}

View File

@ -8,11 +8,11 @@
{% block controls %} {% block controls %}
<div class="controls"> <div class="controls">
<div class="control-group"> <div class="control-group">
<a href="{% url 'dcim:rack_list' %}{% querystring request %}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:rack_list' %}{% querystring request %}" class="btn btn-primary">
<i class="mdi mdi-format-list-checkbox"></i> {% trans "View List" %} <i class="mdi mdi-format-list-checkbox"></i> {% trans "View List" %}
</a> </a>
<div class="btn-group btn-group-sm" role="group"> <div class="btn-group btn-group-sm" role="group">
<select class="btn btn-sm btn-outline-secondary rack-view"> <select class="btn btn-outline-secondary rack-view">
<option value="images-and-labels" selected="selected">{% trans "Images and Labels" %}</option> <option value="images-and-labels" selected="selected">{% trans "Images and Labels" %}</option>
<option value="images-only">{% trans "Images only" %}</option> <option value="images-only">{% trans "Images only" %}</option>
<option value="labels-only">{% trans "Labels only" %}</option> <option value="labels-only">{% trans "Labels only" %}</option>
@ -23,7 +23,7 @@
<a href="{% url 'dcim:rack_elevation_list' %}{% querystring request face='rear' %}" class="btn btn-outline-secondary{% if rack_face == 'rear' %} active{% endif %}">{% trans "Rear" %}</a> <a href="{% url 'dcim:rack_elevation_list' %}{% querystring request face='rear' %}" class="btn btn-outline-secondary{% if rack_face == 'rear' %} active{% endif %}">{% trans "Rear" %}</a>
</div> </div>
<div class="dropdown"> <div class="dropdown">
<button type="button" class="btn btn-sm btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="mdi mdi-sort"></i> {% trans "Sort By" %} {{ sort_display_name }} <i class="mdi mdi-sort"></i> {% trans "Sort By" %} {{ sort_display_name }}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">

View File

@ -4,7 +4,7 @@
{% load i18n %} {% load i18n %}
{% block extra_controls %} {% block extra_controls %}
<a href="{% url 'dcim:rack_elevation_list' %}{% querystring request %}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:rack_elevation_list' %}{% querystring request %}" class="btn btn-primary">
<i class="mdi mdi-view-day-outline"></i> {% trans "View Elevations" %} <i class="mdi mdi-view-day-outline"></i> {% trans "View Elevations" %}
</a> </a>
{% endblock %} {% endblock %}

View File

@ -6,7 +6,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_rack %} {% if perms.dcim.add_rack %}
<a href="{% url 'dcim:rack_add' %}?role={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:rack_add' %}?role={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Rack" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Rack" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -80,7 +80,7 @@
<th scope="row">{% trans "Cable" %}</th> <th scope="row">{% trans "Cable" %}</th>
<td> <td>
{{ object.cable|linkify }} {{ object.cable|linkify }}
<a href="{% url 'dcim:rearport_trace' pk=object.pk %}" class="btn btn-primary btn-sm lh-1" title="{% trans "Trace" %}"> <a href="{% url 'dcim:rearport_trace' pk=object.pk %}" class="btn btn-primary lh-1" title="{% trans "Trace" %}">
<i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i> <i class="mdi mdi-transit-connection-variant" aria-hidden="true"></i>
</a> </a>
</td> </td>
@ -101,7 +101,7 @@
{% trans "Not connected" %} {% trans "Not connected" %}
{% if perms.dcim.add_cable %} {% if perms.dcim.add_cable %}
<span class="dropdown float-end"> <span class="dropdown float-end">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %} <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> {% trans "Connect" %}
</button> </button>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">

View File

@ -13,7 +13,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_site %} {% if perms.dcim.add_site %}
<a href="{% url 'dcim:site_add' %}?region={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:site_add' %}?region={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Site" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Site" %}
</a> </a>
{% endif %} {% endif %}
@ -60,7 +60,7 @@
></div> ></div>
{% if perms.dcim.add_region %} {% if perms.dcim.add_region %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:region_add' %}?parent={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:region_add' %}?parent={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Region" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Region" %}
</a> </a>
</div> </div>

View File

@ -77,7 +77,7 @@
{% if object.physical_address %} {% if object.physical_address %}
{% if config.MAPS_URL %} {% if config.MAPS_URL %}
<div class="position-absolute top-50 end-0 translate-middle-y noprint"> <div class="position-absolute top-50 end-0 translate-middle-y noprint">
<a href="{{ config.MAPS_URL }}{{ object.physical_address|urlencode }}" target="_blank" class="btn btn-primary btn-sm"> <a href="{{ config.MAPS_URL }}{{ object.physical_address|urlencode }}" target="_blank" class="btn btn-primary">
<i class="mdi mdi-map-marker"></i> {% trans "Map" %} <i class="mdi mdi-map-marker"></i> {% trans "Map" %}
</a> </a>
</div> </div>
@ -98,7 +98,7 @@
{% if object.latitude and object.longitude %} {% if object.latitude and object.longitude %}
{% if config.MAPS_URL %} {% if config.MAPS_URL %}
<div class="position-absolute top-50 end-0 translate-middle-y noprint"> <div class="position-absolute top-50 end-0 translate-middle-y noprint">
<a href="{{ config.MAPS_URL }}{{ object.latitude }},{{ object.longitude }}" target="_blank" class="btn btn-primary btn-sm"> <a href="{{ config.MAPS_URL }}{{ object.latitude }},{{ object.longitude }}" target="_blank" class="btn btn-primary">
<i class="mdi mdi-map-marker"></i> {% trans "Map It" %} <i class="mdi mdi-map-marker"></i> {% trans "Map It" %}
</a> </a>
</div> </div>
@ -133,7 +133,7 @@
></div> ></div>
{% if perms.dcim.add_location %} {% if perms.dcim.add_location %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:location_add' %}?site={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'dcim:location_add' %}?site={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Location" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Location" %}
</a> </a>
</div> </div>
@ -147,7 +147,7 @@
></div> ></div>
{% if perms.dcim.add_device %} {% if perms.dcim.add_device %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:device_add' %}?site={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'dcim:device_add' %}?site={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Device" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Device" %}
</a> </a>
</div> </div>

View File

@ -13,7 +13,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.dcim.add_site %} {% if perms.dcim.add_site %}
<a href="{% url 'dcim:site_add' %}?group={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:site_add' %}?group={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Site" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Site" %}
</a> </a>
{% endif %} {% endif %}
@ -60,7 +60,7 @@
></div> ></div>
{% if perms.dcim.add_sitegroup %} {% if perms.dcim.add_sitegroup %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:sitegroup_add' %}?parent={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'dcim:sitegroup_add' %}?parent={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Site Group" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Site Group" %}
</a> </a>
</div> </div>

View File

@ -82,7 +82,7 @@
</div> </div>
{% if perms.dcim.change_virtualchassis %} {% if perms.dcim.change_virtualchassis %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'dcim:virtualchassis_add_member' pk=object.pk %}?site={{ object.master.site.pk }}&rack={{ object.master.rack.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'dcim:virtualchassis_add_member' pk=object.pk %}?site={{ object.master.site.pk }}&rack={{ object.master.rack.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Member" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Member" %}
</a> </a>
</div> </div>

View File

@ -89,7 +89,7 @@
</td> </td>
<td> <td>
{% if virtual_chassis.pk %} {% if virtual_chassis.pk %}
<a href="{% url 'dcim:virtualchassis_remove_member' pk=device.pk %}?return_url={% url 'dcim:virtualchassis_edit' pk=virtual_chassis.pk %}" class="btn btn-danger btn-sm{% if virtual_chassis.master == device %} disabled{% endif %}"> <a href="{% url 'dcim:virtualchassis_remove_member' pk=device.pk %}?return_url={% url 'dcim:virtualchassis_edit' pk=virtual_chassis.pk %}" class="btn btn-danger{% if virtual_chassis.master == device %} disabled{% endif %}">
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span>
</a> </a>
{% endif %} {% endif %}

View File

@ -3,7 +3,7 @@
{% block bulk_buttons %} {% block bulk_buttons %}
{% if perms.extras.sync_configcontext %} {% if perms.extras.sync_configcontext %}
<button type="submit" name="_sync" formaction="{% url 'extras:configcontext_bulk_sync' %}" class="btn btn-primary btn-sm"> <button type="submit" name="_sync" formaction="{% url 'extras:configcontext_bulk_sync' %}" class="btn btn-primary">
<i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync Data" %} <i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync Data" %}
</button> </button>
{% endif %} {% endif %}

View File

@ -3,7 +3,7 @@
{% block bulk_buttons %} {% block bulk_buttons %}
{% if perms.extras.sync_configtemplate %} {% if perms.extras.sync_configtemplate %}
<button type="submit" name="_sync" formaction="{% url 'extras:configtemplate_bulk_sync' %}" class="btn btn-primary btn-sm"> <button type="submit" name="_sync" formaction="{% url 'extras:configtemplate_bulk_sync' %}" class="btn btn-primary">
<i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync Data" %} <i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync Data" %}
</button> </button>
{% endif %} {% endif %}

View File

@ -3,7 +3,7 @@
{% block bulk_buttons %} {% block bulk_buttons %}
{% if perms.extras.sync_configcontext %} {% if perms.extras.sync_configcontext %}
<button type="submit" name="_sync" formaction="{% url 'extras:exporttemplate_bulk_sync' %}" class="btn btn-primary btn-sm"> <button type="submit" name="_sync" formaction="{% url 'extras:exporttemplate_bulk_sync' %}" class="btn btn-primary">
<i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync Data" %} <i class="mdi mdi-sync" aria-hidden="true"></i> {% trans "Sync Data" %}
</button> </button>
{% endif %} {% endif %}

View File

@ -30,7 +30,7 @@
<h5 class="card-header" id="module{{ module.pk }}"> <h5 class="card-header" id="module{{ module.pk }}">
{% if perms.extras.delete_reportmodule %} {% if perms.extras.delete_reportmodule %}
<div class="float-end"> <div class="float-end">
<a href="{% url 'extras:reportmodule_delete' pk=module.pk %}" class="btn btn-danger btn-sm"> <a href="{% url 'extras:reportmodule_delete' pk=module.pk %}" class="btn btn-danger">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %} <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %}
</a> </a>
</div> </div>
@ -83,7 +83,7 @@
<div class="float-end noprint"> <div class="float-end noprint">
<form action="{% url 'extras:report' module=report.module name=report.class_name %}" method="post"> <form action="{% url 'extras:report' module=report.module name=report.class_name %}" method="post">
{% csrf_token %} {% csrf_token %}
<button type="submit" name="_run" class="btn btn-primary btn-sm" style="width: 110px"> <button type="submit" name="_run" class="btn btn-primary" style="width: 110px">
{% if last_job %} {% if last_job %}
<i class="mdi mdi-replay"></i> {% trans "Run Again" %} <i class="mdi mdi-replay"></i> {% trans "Run Again" %}
{% else %} {% else %}

View File

@ -29,7 +29,7 @@
<h5 class="card-header" id="module{{ module.pk }}"> <h5 class="card-header" id="module{{ module.pk }}">
{% if perms.extras.delete_scriptmodule %} {% if perms.extras.delete_scriptmodule %}
<div class="float-end"> <div class="float-end">
<a href="{% url 'extras:scriptmodule_delete' pk=module.pk %}" class="btn btn-danger btn-sm"> <a href="{% url 'extras:scriptmodule_delete' pk=module.pk %}" class="btn btn-danger">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %} <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete" %}
</a> </a>
</div> </div>

View File

@ -121,8 +121,8 @@ Context:
</div> </div>
<div class="text-end"> <div class="text-end">
<button type="submit" name="_apply" class="btn btn-sm btn-primary">{% trans "Apply" %}</button> <button type="submit" name="_apply" class="btn btn-primary">{% trans "Apply" %}</button>
<a href="{{ return_url }}" class="btn btn-sm btn-outline-danger">{% trans "Cancel" %}</a> <a href="{{ return_url }}" class="btn btn-outline-danger">{% trans "Cancel" %}</a>
</div> </div>
</div> </div>
</div> </div>

View File

@ -138,7 +138,7 @@ Context:
</td> </td>
<td> <td>
{% if field.STATIC_CHOICES %} {% if field.STATIC_CHOICES %}
<button type="button" class="btn btn-link btn-sm float-end" data-bs-toggle="modal" data-bs-target="#{{ name }}_choices"> <button type="button" class="btn btn-link float-end" data-bs-toggle="modal" data-bs-target="#{{ name }}_choices">
<i class="mdi mdi-help-circle"></i> <i class="mdi mdi-help-circle"></i>
</button> </button>
<div class="modal fade" id="{{ name }}_choices" tabindex="-1" role="dialog"> <div class="modal fade" id="{{ name }}_choices" tabindex="-1" role="dialog">

View File

@ -13,9 +13,8 @@
{% include 'htmx/table.html' %} {% include 'htmx/table.html' %}
</div> </div>
</div> </div>
<div class="noprint bulk-buttons"> <div class="d-print-none mt-2">
{% block bulk_controls %} {% block bulk_controls %}
<div class="bulk-button-group">
<div class="btn-group" role="group"> <div class="btn-group" role="group">
{# Bulk edit buttons #} {# Bulk edit buttons #}
{% block bulk_edit_controls %} {% block bulk_edit_controls %}
@ -23,7 +22,7 @@
{% if 'bulk_edit' in actions and bulk_edit_view %} {% if 'bulk_edit' in actions and bulk_edit_view %}
<button type="submit" name="_edit" <button type="submit" name="_edit"
formaction="{% url bulk_edit_view %}?return_url={{ return_url }}" formaction="{% url bulk_edit_view %}?return_url={{ return_url }}"
class="btn btn-warning btn-sm"> class="btn btn-warning">
<i class="mdi mdi-pencil" aria-hidden="true"></i> {% trans "Edit Selected" %} <i class="mdi mdi-pencil" aria-hidden="true"></i> {% trans "Edit Selected" %}
</button> </button>
{% endif %} {% endif %}
@ -37,18 +36,15 @@
{% if 'bulk_delete' in actions and bulk_delete_view %} {% if 'bulk_delete' in actions and bulk_delete_view %}
<button type="submit" <button type="submit"
formaction="{% url bulk_delete_view %}?return_url={{ return_url }}" formaction="{% url bulk_delete_view %}?return_url={{ return_url }}"
class="btn btn-danger btn-sm"> class="btn btn-danger">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete Selected" %} <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete Selected" %}
</button> </button>
{% endif %} {% endif %}
{% endwith %} {% endwith %}
{% endblock bulk_delete_controls %} {% endblock bulk_delete_controls %}
</div> </div>
</div>
<div class="bulk-button-group">
{# Other bulk action buttons #} {# Other bulk action buttons #}
{% block bulk_extra_controls %}{% endblock %} {% block bulk_extra_controls %}{% endblock %}
</div>
{% endblock bulk_controls %} {% endblock bulk_controls %}
</div> </div>
</form> </form>

View File

@ -116,8 +116,7 @@ Context:
</div> </div>
{# Form buttons #} {# Form buttons #}
<div class="bulk-buttons mt-2 d-print-none"> <div class="btn-list d-print-none mt-2">
<div class="bulk-button-group">
{% block bulk_buttons %} {% block bulk_buttons %}
{% if 'bulk_edit' in actions %} {% if 'bulk_edit' in actions %}
{% bulk_edit_button model query_params=request.GET %} {% bulk_edit_button model query_params=request.GET %}
@ -128,7 +127,6 @@ Context:
{% endblock %} {% endblock %}
</div> </div>
</div> </div>
</div>
</form> </form>
</div> </div>

View File

@ -33,7 +33,7 @@
<div class="collapse multi-collapse show"> <div class="collapse multi-collapse show">
<div class="d-flex px-3"> <div class="d-flex px-3">
<div class="flex-grow-1"> <div class="flex-grow-1">
<button type="button" id="unlock_dashboard" class="btn btn-light btn-sm" data-bs-toggle="collapse" data-bs-target=".multi-collapse"> <button type="button" id="unlock_dashboard" class="btn btn-light" data-bs-toggle="collapse" data-bs-target=".multi-collapse">
<i class="mdi mdi-lock-open-outline"></i> {% trans "Unlock Dashboard" %} <i class="mdi mdi-lock-open-outline"></i> {% trans "Unlock Dashboard" %}
</button> </button>
</div> </div>
@ -42,7 +42,7 @@
<div class="collapse multi-collapse"> <div class="collapse multi-collapse">
<div class="d-flex px-3"> <div class="d-flex px-3">
<div class="flex-grow-1"> <div class="flex-grow-1">
<button type="button" id="lock_dashboard" class="btn btn-light btn-sm" data-bs-toggle="collapse" data-bs-target=".multi-collapse"> <button type="button" id="lock_dashboard" class="btn btn-light" data-bs-toggle="collapse" data-bs-target=".multi-collapse">
<i class="mdi mdi-lock-outline"></i> {% trans "Lock Dashboard" %} <i class="mdi mdi-lock-outline"></i> {% trans "Lock Dashboard" %}
</button> </button>
</div> </div>
@ -52,14 +52,14 @@
hx-target="#htmx-modal-content" hx-target="#htmx-modal-content"
data-bs-toggle="modal" data-bs-toggle="modal"
data-bs-target="#htmx-modal" data-bs-target="#htmx-modal"
class="btn btn-success btn-sm" class="btn btn-success"
> >
<i class="mdi mdi-plus"></i> {% trans "Add Widget" %} <i class="mdi mdi-plus"></i> {% trans "Add Widget" %}
</a> </a>
<button id="save_dashboard" class="btn btn-primary btn-sm" data-url="{% url 'extras-api:dashboard' %}"> <button id="save_dashboard" class="btn btn-primary" data-url="{% url 'extras-api:dashboard' %}">
<i class="mdi mdi-content-save-outline"></i> {% trans "Save Layout" %} <i class="mdi mdi-content-save-outline"></i> {% trans "Save Layout" %}
</button> </button>
<a href="{% url 'extras:dashboard_reset' %}" class="btn btn-danger btn-sm"> <a href="{% url 'extras:dashboard_reset' %}" class="btn btn-danger">
<i class="mdi mdi-backspace"></i> {% trans "Reset Dashboard" %} <i class="mdi mdi-backspace"></i> {% trans "Reset Dashboard" %}
</a> </a>
</div> </div>

View File

@ -25,7 +25,7 @@
{% endfor %} {% endfor %}
</div> </div>
<div class="text-end"> <div class="text-end">
<button type="submit" class="btn btn-sm btn-primary">{% trans "Search" %}</button> <button type="submit" class="btn btn-primary">{% trans "Search" %}</button>
</div> </div>
</form> </form>
<div id="selector_results" class="mt-3" data-selector-target="{{ target_id }}"></div> <div id="selector_results" class="mt-3" data-selector-target="{{ target_id }}"></div>

View File

@ -46,10 +46,10 @@
{% endif %} {% endif %}
</div> </div>
<div class="card-footer text-end noprint border-0"> <div class="card-footer text-end noprint border-0">
<button type="button" class="btn btn-sm btn-outline-danger m-1" data-reset-select> <button type="button" class="btn btn-outline-danger m-1" data-reset-select>
<i class="mdi mdi-backspace"></i> {% trans "Reset" %} <i class="mdi mdi-backspace"></i> {% trans "Reset" %}
</button> </button>
<button type="submit" class="btn btn-sm btn-primary m-1"> <button type="submit" class="btn btn-primary m-1">
<i class="mdi mdi-magnify"></i> {% trans "Search" %} <i class="mdi mdi-magnify"></i> {% trans "Search" %}
</button> </button>
</div> </div>

View File

@ -6,7 +6,7 @@
{% htmx_table 'extras:imageattachment_list' content_type_id=object|content_type_id object_id=object.pk %} {% htmx_table 'extras:imageattachment_list' content_type_id=object|content_type_id object_id=object.pk %}
{% if perms.extras.add_imageattachment %} {% if perms.extras.add_imageattachment %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'extras:imageattachment_add' %}?content_type={{ object|content_type_id }}&object_id={{ object.pk }}" class="btn btn-primary btn-sm"> <a href="{% url 'extras:imageattachment_add' %}?content_type={{ object|content_type_id }}&object_id={{ object.pk }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Attach an image" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Attach an image" %}
</a> </a>
</div> </div>

View File

@ -4,7 +4,7 @@
{% block extra_controls %} {% block extra_controls %}
{% include 'ipam/inc/toggle_available.html' %} {% include 'ipam/inc/toggle_available.html' %}
{% if perms.ipam.add_prefix and first_available_prefix %} {% if perms.ipam.add_prefix and first_available_prefix %}
<a href="{% url 'ipam:prefix_add' %}?prefix={{ first_available_prefix }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:prefix_add' %}?prefix={{ first_available_prefix }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Prefix" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Prefix" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -76,7 +76,7 @@
></div> ></div>
{% if perms.ipam.add_ipaddress %} {% if perms.ipam.add_ipaddress %}
<div class="card-footer text-end"> <div class="card-footer text-end">
<a href="{% url 'ipam:ipaddress_add' %}?fhrpgroup={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:ipaddress_add' %}?fhrpgroup={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Address" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Address" %}
</a> </a>
</div> </div>

View File

@ -27,12 +27,12 @@
<td>{{ assignment.priority }}</td> <td>{{ assignment.priority }}</td>
<td class="text-end noprint"> <td class="text-end noprint">
{% if perms.ipam.change_fhrpgroupassignment %} {% if perms.ipam.change_fhrpgroupassignment %}
<a href="{% url 'ipam:fhrpgroupassignment_edit' pk=assignment.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-warning btn-sm lh-1" title="{% trans "Edit" %}"> <a href="{% url 'ipam:fhrpgroupassignment_edit' pk=assignment.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-warning lh-1" title="{% trans "Edit" %}">
<i class="mdi mdi-pencil" aria-hidden="true"></i> <i class="mdi mdi-pencil" aria-hidden="true"></i>
</a> </a>
{% endif %} {% endif %}
{% if perms.ipam.delete_fhrpgroupassignment %} {% if perms.ipam.delete_fhrpgroupassignment %}
<a href="{% url 'ipam:fhrpgroupassignment_delete' pk=assignment.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-danger btn-sm lh-1" title="{% trans "Delete" %}"> <a href="{% url 'ipam:fhrpgroupassignment_delete' pk=assignment.pk %}?return_url={{ object.get_absolute_url }}" class="btn btn-danger lh-1" title="{% trans "Delete" %}">
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i>
</a> </a>
{% endif %} {% endif %}
@ -48,12 +48,12 @@
</div> </div>
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
{% if perms.ipam.add_fhrpgroup %} {% if perms.ipam.add_fhrpgroup %}
<a href="{% url 'ipam:fhrpgroup_add' %}?return_url={% url 'ipam:fhrpgroupassignment_add' %}%3Finterface_type={{ object|content_type_id }}%26interface_id={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:fhrpgroup_add' %}?return_url={% url 'ipam:fhrpgroupassignment_add' %}%3Finterface_type={{ object|content_type_id }}%26interface_id={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Create Group" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Create Group" %}
</a> </a>
{% endif %} {% endif %}
{% if perms.ipam.add_fhrpgroupassignment %} {% if perms.ipam.add_fhrpgroupassignment %}
<a href="{% url 'ipam:fhrpgroupassignment_add' %}?interface_type={{ object|content_type_id }}&interface_id={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:fhrpgroupassignment_add' %}?interface_type={{ object|content_type_id }}&interface_id={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Assign Group" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Assign Group" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -3,13 +3,13 @@
{% if show_assigned or show_available is not None %} {% if show_assigned or show_available is not None %}
<div class="btn-group" role="group"> <div class="btn-group" role="group">
<a href="{{ request.path }}{% querystring request show_assigned='true' show_available='false' %}" class="btn btn-sm {% if show_assigned and not show_available %}btn-secondary active{% else %}btn-outline-secondary{% endif %}"> <a href="{{ request.path }}{% querystring request show_assigned='true' show_available='false' %}" class="btn {% if show_assigned and not show_available %}btn-secondary active{% else %}btn-outline-secondary{% endif %}">
{% trans "Show Assigned" %} {% trans "Show Assigned" %}
</a> </a>
<a href="{{ request.path }}{% querystring request show_assigned='false' show_available='true' %}" class="btn btn-sm {% if show_available and not show_assigned %}btn-secondary active{% else %}btn-outline-secondary{% endif %}"> <a href="{{ request.path }}{% querystring request show_assigned='false' show_available='true' %}" class="btn {% if show_available and not show_assigned %}btn-secondary active{% else %}btn-outline-secondary{% endif %}">
{% trans "Show Available" %} {% trans "Show Available" %}
</a> </a>
<a href="{{ request.path }}{% querystring request show_assigned='true' show_available='true' %}" class="btn btn-sm {% if show_available and show_assigned %}btn-secondary active{% else %}btn-outline-secondary{% endif %}"> <a href="{{ request.path }}{% querystring request show_assigned='true' show_available='true' %}" class="btn {% if show_available and show_assigned %}btn-secondary active{% else %}btn-outline-secondary{% endif %}">
{% trans "Show All" %} {% trans "Show All" %}
</a> </a>
</div> </div>

View File

@ -3,7 +3,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.ipam.add_ipaddress and object.first_available_ip %} {% if perms.ipam.add_ipaddress and object.first_available_ip %}
<a href="{% url 'ipam:ipaddress_add' %}?address={{ object.first_available_ip }}&vrf={{ object.vrf.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:ipaddress_add' %}?address={{ object.first_available_ip }}&vrf={{ object.vrf.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Address" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Address" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -147,7 +147,7 @@
</table> </table>
{% if object.prefix.version == 4 %} {% if object.prefix.version == 4 %}
<div class="float-end"> <div class="float-end">
<a class="btn btn-primary btn-sm" data-bs-toggle="modal" data-bs-target="#prefix-modal"> <a class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#prefix-modal">
<i class="mdi mdi-information-outline" aria-hidden="true"></i> {% trans "Addressing Details" %} <i class="mdi mdi-information-outline" aria-hidden="true"></i> {% trans "Addressing Details" %}
</a> </a>
</div> </div>

View File

@ -3,7 +3,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.ipam.add_ipaddress and first_available_ip %} {% if perms.ipam.add_ipaddress and first_available_ip %}
<a href="{% url 'ipam:ipaddress_add' %}?address={{ first_available_ip }}&vrf={{ object.vrf.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}&return_url={% url 'ipam:prefix_ipaddresses' pk=object.pk %}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:ipaddress_add' %}?address={{ first_available_ip }}&vrf={{ object.vrf.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}&return_url={% url 'ipam:prefix_ipaddresses' pk=object.pk %}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Address" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Address" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -3,7 +3,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.ipam.add_iprange and first_available_ip %} {% if perms.ipam.add_iprange and first_available_ip %}
<a href="{% url 'ipam:iprange_add' %}?start_address={{ first_available_ip }}&vrf={{ object.vrf.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}&return_url={% url 'ipam:prefix_ipranges' pk=object.pk %}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:iprange_add' %}?start_address={{ first_available_ip }}&vrf={{ object.vrf.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}&return_url={% url 'ipam:prefix_ipranges' pk=object.pk %}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Range" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add IP Range" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -4,7 +4,7 @@
{% block extra_controls %} {% block extra_controls %}
{% include 'ipam/inc/toggle_available.html' %} {% include 'ipam/inc/toggle_available.html' %}
{% if perms.ipam.add_prefix and first_available_prefix %} {% if perms.ipam.add_prefix and first_available_prefix %}
<a href="{% url 'ipam:prefix_add' %}?prefix={{ first_available_prefix }}&vrf={{ object.vrf.pk }}&site={{ object.site.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:prefix_add' %}?prefix={{ first_available_prefix }}&vrf={{ object.vrf.pk }}&site={{ object.site.pk }}&tenant_group={{ object.tenant.group.pk }}&tenant={{ object.tenant.pk }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Prefix" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Prefix" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -3,11 +3,11 @@
{% load i18n %} {% load i18n %}
{% block extra_controls %} {% block extra_controls %}
<button class="btn btn-sm btn-outline-secondary toggle-depth" type="button"> <button class="btn btn-outline-secondary toggle-depth" type="button">
{% trans "Hide Depth Indicators" %} {% trans "Hide Depth Indicators" %}
</button> </button>
<div class="dropdown"> <div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" id="max_depth" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> <button class="btn btn-outline-secondary dropdown-toggle" type="button" id="max_depth" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
{% trans "Max Depth" %}{% if "depth__lte" in request.GET %}: {{ request.GET.depth__lte }}{% endif %} {% trans "Max Depth" %}{% if "depth__lte" in request.GET %}: {{ request.GET.depth__lte }}{% endif %}
</button> </button>
<ul class="dropdown-menu" aria-labelledby="max_depth"> <ul class="dropdown-menu" aria-labelledby="max_depth">
@ -24,7 +24,7 @@
</ul> </ul>
</div> </div>
<div class="dropdown"> <div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" id="max_length" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> <button class="btn btn-outline-secondary dropdown-toggle" type="button" id="max_length" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
{% trans "Max Length" %}{% if "mask_length__lte" in request.GET %}: {{ request.GET.mask_length__lte }}{% endif %} {% trans "Max Length" %}{% if "mask_length__lte" in request.GET %}: {{ request.GET.mask_length__lte }}{% endif %}
</button> </button>
<ul class="dropdown-menu" aria-labelledby="max_length"> <ul class="dropdown-menu" aria-labelledby="max_length">

View File

@ -6,7 +6,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.ipam.add_aggregate %} {% if perms.ipam.add_aggregate %}
<a href="{% url 'ipam:aggregate_add' %}?rir={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:aggregate_add' %}?rir={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Aggregate" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Aggregate" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -6,7 +6,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.ipam.add_prefix %} {% if perms.ipam.add_prefix %}
<a href="{% url 'ipam:prefix_add' %}?role={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:prefix_add' %}?role={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Prefix" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Prefix" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -91,7 +91,7 @@
></div> ></div>
{% if perms.ipam.add_prefix %} {% if perms.ipam.add_prefix %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'ipam:prefix_add' %}?{% if object.tenant %}tenant={{ object.tenant.pk }}&{% endif %}site={{ object.site.pk }}&vlan={{ object.pk }}" class="btn btn-primary btn-sm"> <a href="{% url 'ipam:prefix_add' %}?{% if object.tenant %}tenant={{ object.tenant.pk }}&{% endif %}site={{ object.site.pk }}&vlan={{ object.pk }}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Prefix" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a Prefix" %}
</a> </a>
</div> </div>

View File

@ -14,7 +14,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.ipam.add_vlan %} {% if perms.ipam.add_vlan %}
<a href="{% url 'ipam:vlan_add' %}?group={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:vlan_add' %}?group={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add VLAN" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add VLAN" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -53,7 +53,7 @@
></div> ></div>
{% if perms.tenancy.add_contactgroup %} {% if perms.tenancy.add_contactgroup %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'tenancy:contactgroup_add' %}?parent={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'tenancy:contactgroup_add' %}?parent={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Contact Group" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Contact Group" %}
</a> </a>
</div> </div>

View File

@ -5,7 +5,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.tenancy.add_contactassignment %} {% if perms.tenancy.add_contactassignment %}
{% with viewname=object|viewname:"contacts" %} {% with viewname=object|viewname:"contacts" %}
<a href="{% url 'tenancy:contactassignment_add' %}?content_type={{ object|content_type_id }}&object_id={{ object.pk }}&return_url={% url viewname pk=object.pk %}" class="btn btn-primary btn-sm"> <a href="{% url 'tenancy:contactassignment_add' %}?content_type={{ object|content_type_id }}&object_id={{ object.pk }}&return_url={% url viewname pk=object.pk %}" class="btn btn-primary">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a contact" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add a contact" %}
</a> </a>
{% endwith %} {% endwith %}

View File

@ -13,7 +13,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.tenancy.add_tenant %} {% if perms.tenancy.add_tenant %}
<a href="{% url 'tenancy:tenant_add' %}?group={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'tenancy:tenant_add' %}?group={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Tenant" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Tenant" %}
</a> </a>
{% endif %} {% endif %}
@ -62,7 +62,7 @@
></div> ></div>
{% if perms.tenancy.add_tenantgroup %} {% if perms.tenancy.add_tenantgroup %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'tenancy:tenantgroup_add' %}?parent={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'tenancy:tenantgroup_add' %}?parent={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Tenant Group" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Tenant Group" %}
</a> </a>
</div> </div>

View File

@ -14,13 +14,13 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.virtualization.change_cluster and perms.virtualization.add_virtualmachine %} {% if perms.virtualization.change_cluster and perms.virtualization.add_virtualmachine %}
<a href="{% url 'virtualization:virtualmachine_add' %}?cluster={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{% url 'virtualization:virtualmachine_add' %}?cluster={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Virtual Machine" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Virtual Machine" %}
</a> </a>
{% endif %} {% endif %}
{% if perms.virtualization.change_cluster %} {% if perms.virtualization.change_cluster %}
<a href="{% url 'virtualization:cluster_add_devices' pk=object.pk %}?site={{ object.site.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary btn-sm"> <a href="{% url 'virtualization:cluster_add_devices' pk=object.pk %}?site={{ object.site.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Assign Device" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Assign Device" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -6,7 +6,7 @@
{% if 'bulk_remove_devices' in actions %} {% if 'bulk_remove_devices' in actions %}
<button type="submit" name="_remove" <button type="submit" name="_remove"
formaction="{% url 'virtualization:cluster_remove_devices' pk=object.pk %}?return_url={{ return_url }}" formaction="{% url 'virtualization:cluster_remove_devices' pk=object.pk %}?return_url={{ return_url }}"
class="btn btn-danger btn-sm"> class="btn btn-danger">
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> {% trans "Remove Selected" %} <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> {% trans "Remove Selected" %}
</button> </button>
{% endif %} {% endif %}

View File

@ -6,7 +6,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.virtualization.add_cluster %} {% if perms.virtualization.add_cluster %}
<a href="{% url 'virtualization:cluster_add' %}?group={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'virtualization:cluster_add' %}?group={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Cluster" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Cluster" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -6,7 +6,7 @@
{% block extra_controls %} {% block extra_controls %}
{% if perms.virtualization.add_cluster %} {% if perms.virtualization.add_cluster %}
<a href="{% url 'virtualization:cluster_add' %}?type={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'virtualization:cluster_add' %}?type={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Cluster" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Cluster" %}
</a> </a>
{% endif %} {% endif %}

View File

@ -161,7 +161,7 @@
></div> ></div>
{% if perms.ipam.add_service %} {% if perms.ipam.add_service %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'ipam:service_add' %}?virtual_machine={{ object.pk }}" class="btn btn-sm btn-primary"> <a href="{% url 'ipam:service_add' %}?virtual_machine={{ object.pk }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add a service" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add a service" %}
</a> </a>
</div> </div>
@ -181,7 +181,7 @@
></div> ></div>
{% if perms.virtualization.add_virtualdisk %} {% if perms.virtualization.add_virtualdisk %}
<div class="card-footer text-end noprint"> <div class="card-footer text-end noprint">
<a href="{% url 'virtualization:virtualdisk_add' %}?device={{ object.device.pk }}&virtual_machine={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary"> <a href="{% url 'virtualization:virtualdisk_add' %}?device={{ object.device.pk }}&virtual_machine={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-primary">
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Virtual Disk" %} <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Add Virtual Disk" %}
</a> </a>
</div> </div>

View File

@ -18,7 +18,7 @@
{% block extra_controls %} {% block extra_controls %}
<div class="dropdown"> <div class="dropdown">
<button id="add-components" type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <button id="add-components" type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %} <i class="mdi mdi-plus-thick" aria-hidden="true"></i> {% trans "Add Components" %}
</button> </button>
<ul class="dropdown-menu" aria-labeled-by="add-components"> <ul class="dropdown-menu" aria-labeled-by="add-components">

View File

@ -7,7 +7,7 @@
{% if 'bulk_rename' in actions %} {% if 'bulk_rename' in actions %}
<button type="submit" name="_rename" <button type="submit" name="_rename"
formaction="{% url 'virtualization:vminterface_bulk_rename' %}?return_url={{ return_url }}" formaction="{% url 'virtualization:vminterface_bulk_rename' %}?return_url={{ return_url }}"
class="btn btn-outline-warning btn-sm"> class="btn btn-outline-warning">
<i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename" %} <i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename" %}
</button> </button>
{% endif %} {% endif %}

View File

@ -53,7 +53,7 @@
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">
<div class="float-end"> <div class="float-end">
<a href="?export=True" class="btn btn-sm btn-primary" role="button"> <a href="?export=True" class="btn btn-primary" role="button">
<i class="mdi mdi-download" aria-hidden="true"></i> {% trans "Download" %} <i class="mdi mdi-download" aria-hidden="true"></i> {% trans "Download" %}
</a> </a>
</div> </div>

View File

@ -7,7 +7,7 @@
{% if 'bulk_rename' in actions %} {% if 'bulk_rename' in actions %}
<button type="submit" name="_rename" <button type="submit" name="_rename"
formaction="{% url 'virtualization:virtualdisk_bulk_rename' %}?return_url={{ return_url }}" formaction="{% url 'virtualization:virtualdisk_bulk_rename' %}?return_url={{ return_url }}"
class="btn btn-outline-warning btn-sm"> class="btn btn-outline-warning">
<i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename" %} <i class="mdi mdi-pencil-outline" aria-hidden="true"></i> {% trans "Rename" %}
</button> </button>
{% endif %} {% endif %}

Some files were not shown because too many files have changed in this diff Show More