Просмотр исходного кода

Replace Glyphicons with Material Design

Jeremy Stretch 5 лет назад
Родитель
Сommit
72dace29b7
42 измененных файлов с 136 добавлено и 136 удалено
  1. 3 3
      netbox/dcim/tables.py
  2. 10 10
      netbox/dcim/tables/template_code.py
  3. 2 2
      netbox/extras/tables.py
  4. 1 1
      netbox/ipam/tables.py
  5. 1 1
      netbox/templates/403.html
  6. 1 1
      netbox/templates/404.html
  7. 2 2
      netbox/templates/circuits/inc/circuit_termination.html
  8. 1 1
      netbox/templates/circuits/provider.html
  9. 1 1
      netbox/templates/dcim/consoleport.html
  10. 1 1
      netbox/templates/dcim/consoleserverport.html
  11. 47 47
      netbox/templates/dcim/device.html
  12. 1 1
      netbox/templates/dcim/device_edit.html
  13. 1 1
      netbox/templates/dcim/device_list.html
  14. 3 3
      netbox/templates/dcim/devicetype.html
  15. 1 1
      netbox/templates/dcim/frontport.html
  16. 5 5
      netbox/templates/dcim/inc/device_component_table.html
  17. 4 4
      netbox/templates/dcim/inc/devicetype_component_table.html
  18. 1 1
      netbox/templates/dcim/interface.html
  19. 1 1
      netbox/templates/dcim/powerfeed.html
  20. 1 1
      netbox/templates/dcim/poweroutlet.html
  21. 1 1
      netbox/templates/dcim/powerport.html
  22. 6 6
      netbox/templates/dcim/rack.html
  23. 1 1
      netbox/templates/dcim/rack_elevation_list.html
  24. 1 1
      netbox/templates/dcim/rearport.html
  25. 3 3
      netbox/templates/dcim/site.html
  26. 1 1
      netbox/templates/dcim/virtualchassis.html
  27. 1 1
      netbox/templates/dcim/virtualchassis_edit.html
  28. 1 1
      netbox/templates/extras/configcontext.html
  29. 2 2
      netbox/templates/extras/tag.html
  30. 2 2
      netbox/templates/inc/custom_fields_panel.html
  31. 2 2
      netbox/templates/inc/image_attachments.html
  32. 2 2
      netbox/templates/ipam/inc/service.html
  33. 2 2
      netbox/templates/ipam/prefix.html
  34. 1 1
      netbox/templates/ipam/vlan.html
  35. 2 2
      netbox/templates/ipam/vrf.html
  36. 1 1
      netbox/templates/users/preferences.html
  37. 4 4
      netbox/templates/utilities/obj_list.html
  38. 4 4
      netbox/templates/utilities/obj_table.html
  39. 2 2
      netbox/templates/virtualization/cluster.html
  40. 7 7
      netbox/templates/virtualization/virtualmachine.html
  41. 1 1
      netbox/templates/virtualization/virtualmachine_list.html
  42. 1 1
      netbox/virtualization/tables.py

+ 3 - 3
netbox/dcim/tables.py

@@ -61,7 +61,7 @@ RACKRESERVATION_ACTIONS = """
     <i class="fa fa-history"></i>
 </a>
 {% if perms.dcim.change_rackreservation %}
-    <a href="{% url 'dcim:rackreservation_edit' pk=record.pk %}?return_url={{ request.path }}" class="btn btn-xs btn-warning"><i class="glyphicon glyphicon-pencil" aria-hidden="true"></i></a>
+    <a href="{% url 'dcim:rackreservation_edit' pk=record.pk %}?return_url={{ request.path }}" class="btn btn-xs btn-warning"><i class="mdi mdi-pencil" aria-hidden="true"></i></a>
 {% endif %}
 """
 
@@ -70,7 +70,7 @@ MANUFACTURER_ACTIONS = """
     <i class="fa fa-history"></i>
 </a>
 {% if perms.dcim.change_manufacturer %}
-    <a href="{% url 'dcim:manufacturer_edit' slug=record.slug %}?return_url={{ request.path }}" class="btn btn-xs btn-warning"><i class="glyphicon glyphicon-pencil" aria-hidden="true"></i></a>
+    <a href="{% url 'dcim:manufacturer_edit' slug=record.slug %}?return_url={{ request.path }}" class="btn btn-xs btn-warning"><i class="mdi mdi-pencil" aria-hidden="true"></i></a>
 {% endif %}
 """
 
@@ -87,7 +87,7 @@ DEVICEROLE_ACTIONS = """
     <i class="fa fa-history"></i>
 </a>
 {% if perms.dcim.change_devicerole %}
-    <a href="{% url 'dcim:devicerole_edit' slug=record.slug %}?return_url={{ request.path }}" class="btn btn-xs btn-warning"><i class="glyphicon glyphicon-pencil" aria-hidden="true"></i></a>
+    <a href="{% url 'dcim:devicerole_edit' slug=record.slug %}?return_url={{ request.path }}" class="btn btn-xs btn-warning"><i class="mdi mdi-pencil" aria-hidden="true"></i></a>
 {% endif %}
 """
 

+ 10 - 10
netbox/dcim/tables/template_code.py

@@ -95,7 +95,7 @@ CONSOLEPORT_BUTTONS = """
 {% elif perms.dcim.add_cable %}
     <span class="dropdown">
         <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span>
+            <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
         </button>
         <ul class="dropdown-menu dropdown-menu-right">
             <li><a href="{% url 'dcim:consoleport_connect' termination_a_id=record.pk termination_b_type='console-server-port' %}?return_url={{ device.get_absolute_url }}">Console Server Port</a></li>
@@ -113,7 +113,7 @@ CONSOLESERVERPORT_BUTTONS = """
 {% elif perms.dcim.add_cable %}
     <span class="dropdown">
         <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span>
+            <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
         </button>
         <ul class="dropdown-menu dropdown-menu-right">
             <li><a href="{% url 'dcim:consoleserverport_connect' termination_a_id=record.pk termination_b_type='console-port' %}?return_url={{ device.get_absolute_url }}">Console Port</a></li>
@@ -131,7 +131,7 @@ POWERPORT_BUTTONS = """
 {% elif perms.dcim.add_cable %}
     <span class="dropdown">
         <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span>
+            <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
         </button>
         <ul class="dropdown-menu dropdown-menu-right">
             <li><a href="{% url 'dcim:powerport_connect' termination_a_id=record.pk termination_b_type='power-outlet' %}?return_url={{ device.get_absolute_url }}">Power Outlet</a></li>
@@ -147,7 +147,7 @@ POWEROUTLET_BUTTONS = """
     {% include 'dcim/inc/cable_toggle_buttons.html' with cable=record.cable %}
 {% elif perms.dcim.add_cable %}
     <a href="{% url 'dcim:poweroutlet_connect' termination_a_id=record.pk termination_b_type='power-port' %}?return_url={{ device.get_absolute_url }}" title="Connect" class="btn btn-success btn-xs">
-        <i class="glyphicon glyphicon-resize-small" aria-hidden="true"></i>
+        <i class="mdi mdi-lan-connect" aria-hidden="true"></i>
     </a>
 {% endif %}
 """
@@ -155,7 +155,7 @@ POWEROUTLET_BUTTONS = """
 INTERFACE_BUTTONS = """
 {% if perms.ipam.add_ipaddress %}
     <a href="{% url 'ipam:ipaddress_add' %}?interface={{ record.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-success" title="Add IP address">
-        <i class="glyphicon glyphicon-plus" aria-hidden="true"></i>
+        <i class="mdi mdi-plus-thick" aria-hidden="true"></i>
     </a>
 {% endif %}
 {% if record.cable %}
@@ -164,7 +164,7 @@ INTERFACE_BUTTONS = """
 {% elif record.is_connectable and perms.dcim.add_cable %}
     <span class="dropdown">
         <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span>
+            <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
         </button>
         <ul class="dropdown-menu dropdown-menu-right">
             <li><a href="{% url 'dcim:interface_connect' termination_a_id=record.pk termination_b_type='interface' %}?return_url={{ device.get_absolute_url }}">Interface</a></li>
@@ -183,7 +183,7 @@ FRONTPORT_BUTTONS = """
 {% elif perms.dcim.add_cable %}
     <span class="dropdown">
         <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span>
+            <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
         </button>
         <ul class="dropdown-menu dropdown-menu-right">
             <li><a href="{% url 'dcim:frontport_connect' termination_a_id=record.pk termination_b_type='interface' %}?return_url={{ device.get_absolute_url }}">Interface</a></li>
@@ -204,7 +204,7 @@ REARPORT_BUTTONS = """
 {% elif perms.dcim.add_cable %}
     <span class="dropdown">
         <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span>
+            <span class="mdi mdi-lan-connect" aria-hidden="true"></span>
         </button>
         <ul class="dropdown-menu dropdown-menu-right">
             <li><a href="{% url 'dcim:rearport_connect' termination_a_id=record.pk termination_b_type='interface' %}?return_url={{ device.get_absolute_url }}">Interface</a></li>
@@ -220,11 +220,11 @@ DEVICEBAY_BUTTONS = """
 {% if perms.dcim.change_devicebay %}
     {% if record.installed_device %}
         <a href="{% url 'dcim:devicebay_depopulate' pk=record.pk %}" class="btn btn-danger btn-xs">
-            <i class="glyphicon glyphicon-remove" aria-hidden="true" title="Remove device"></i>
+            <i class="mdi mdi-close-thick" aria-hidden="true" title="Remove device"></i>
         </a>
     {% else %}
         <a href="{% url 'dcim:devicebay_populate' pk=record.pk %}" class="btn btn-success btn-xs">
-            <i class="glyphicon glyphicon-plus" aria-hidden="true" title="Install device"></i>
+            <i class="mdi mdi-plus-thick" aria-hidden="true" title="Install device"></i>
         </a>
     {% endif %}
 {% endif %}

+ 2 - 2
netbox/extras/tables.py

@@ -14,10 +14,10 @@ TAGGED_ITEM = """
 
 CONFIGCONTEXT_ACTIONS = """
 {% if perms.extras.change_configcontext %}
-    <a href="{% url 'extras:configcontext_edit' pk=record.pk %}" class="btn btn-xs btn-warning"><i class="glyphicon glyphicon-pencil" aria-hidden="true"></i></a>
+    <a href="{% url 'extras:configcontext_edit' pk=record.pk %}" class="btn btn-xs btn-warning"><i class="mdi mdi-pencil" aria-hidden="true"></i></a>
 {% endif %}
 {% if perms.extras.delete_configcontext %}
-    <a href="{% url 'extras:configcontext_delete' pk=record.pk %}" class="btn btn-xs btn-danger"><i class="glyphicon glyphicon-trash" aria-hidden="true"></i></a>
+    <a href="{% url 'extras:configcontext_delete' pk=record.pk %}" class="btn btn-xs btn-danger"><i class="mdi mdi-trash-can-outline" aria-hidden="true"></i></a>
 {% endif %}
 """
 

+ 1 - 1
netbox/ipam/tables.py

@@ -97,7 +97,7 @@ VLANGROUP_ADD_VLAN = """
 {% with next_vid=record.get_next_available_vid %}
     {% if next_vid and perms.ipam.add_vlan %}
         <a href="{% url 'ipam:vlan_add' %}?site={{ record.site_id }}&group={{ record.pk }}&vid={{ next_vid }}" title="Add VLAN" class="btn btn-xs btn-success">
-            <i class="glyphicon glyphicon-plus" aria-hidden="true"></i>
+            <i class="mdi mdi-plus-thick" aria-hidden="true"></i>
         </a>
     {% endif %}
 {% endwith %}

+ 1 - 1
netbox/templates/403.html

@@ -2,7 +2,7 @@
 
 {% block title %}Access Denied{% endblock %}
 
-{% block icon %}<i class="glyphicon glyphicon-lock"></i>{% endblock %}
+{% block icon %}<i class="mdi mdi-lock"></i>{% endblock %}
 
 {% block message %}
     You do not have permission to access this page.

+ 1 - 1
netbox/templates/404.html

@@ -2,7 +2,7 @@
 
 {% block title %}Page Not Found{% endblock %}
 
-{% block icon %}<i class="glyphicon glyphicon-warning-sign"></i>{% endblock %}
+{% block icon %}<i class="mdi mdi-alert"></i>{% endblock %}
 
 {% block message %}
     The requested page does not exist.

+ 2 - 2
netbox/templates/circuits/inc/circuit_termination.html

@@ -43,7 +43,7 @@
                         {% if perms.dcim.delete_cable %}
                             <div class="pull-right">
                                 <a href="{% url 'dcim:cable_delete' pk=termination.cable.pk %}?return_url={{ termination.circuit.get_absolute_url }}" title="Remove cable" class="btn btn-danger btn-xs">
-                                    <i class="glyphicon glyphicon-resize-full" aria-hidden="true"></i> Disconnect
+                                    <i class="mdi mdi-ethernet-cable-off" aria-hidden="true"></i> Disconnect
                                 </a>
                             </div>
                         {% endif %}
@@ -65,7 +65,7 @@
                             <div class="pull-right">
                                 <span class="dropdown">
                                     <button type="button" class="btn btn-success btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                        <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                        <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                     </button>
                                     <ul class="dropdown-menu dropdown-menu-right">
                                         <li><a href="{% url 'circuits:circuittermination_connect' termination_a_id=termination.pk termination_b_type='interface' %}?termination_b_site={{ termination.site.pk }}&return_url={{ circuit.get_absolute_url }}">Interface</a></li>

+ 1 - 1
netbox/templates/circuits/provider.html

@@ -124,7 +124,7 @@
             {% if perms.circuits.add_circuit %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'circuits:circuit_add' %}?provider={{ provider.pk }}" class="btn btn-xs btn-primary">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add circuit
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add circuit
                     </a>
                 </div>
             {% endif %}

+ 1 - 1
netbox/templates/dcim/consoleport.html

@@ -92,7 +92,7 @@
                         {% if perms.dcim.add_cable %}
                             <span class="dropdown pull-right">
                                 <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                    <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                    <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                 </button>
                                 <ul class="dropdown-menu dropdown-menu-right">
                                     <li><a href="{% url 'dcim:consoleport_connect' termination_a_id=instance.pk termination_b_type='console-server-port' %}?return_url={{ instance.get_absolute_url }}">Console Server Port</a></li>

+ 1 - 1
netbox/templates/dcim/consoleserverport.html

@@ -92,7 +92,7 @@
                         {% if perms.dcim.add_cable %}
                             <span class="dropdown pull-right">
                                 <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                    <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                    <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                 </button>
                                 <ul class="dropdown-menu dropdown-menu-right">
                                     <li><a href="{% url 'dcim:consoleserverport_connect' termination_a_id=instance.pk termination_b_type='console-port' %}?return_url={{ instance.get_absolute_url }}">Console Port</a></li>

+ 47 - 47
netbox/templates/dcim/device.html

@@ -38,7 +38,7 @@
         {% if perms.dcim.change_device %}
             <div class="btn-group">
                 <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                    <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add Components <span class="caret"></span>
+                    <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add Components <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu">
                     {% if perms.dcim.add_consoleport %}
@@ -401,7 +401,7 @@
                                     {% if perms.secrets.add_secret %}
                                         <div class="panel-footer text-right noprint">
                                             <a href="{% url 'secrets:secret_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-primary">
-                                                <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add secret
+                                                <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add secret
                                             </a>
                                         </div>
                                     {% endif %}
@@ -425,7 +425,7 @@
                                 {% if perms.ipam.add_service %}
                                     <div class="panel-footer text-right noprint">
                                         <a href="{% url 'dcim:device_service_assign' device=device.pk %}" class="btn btn-xs btn-primary">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Assign service
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Assign service
                                         </a>
                                     </div>
                                 {% endif %}
@@ -438,7 +438,7 @@
                                 {% if perms.extras.add_imageattachment %}
                                     <div class="panel-footer text-right noprint">
                                         <a href="{% url 'dcim:device_add_image' object_id=device.pk %}" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                                             Attach an image
                                         </a>
                                     </div>
@@ -498,26 +498,26 @@
                             <div class="panel-footer noprint">
                                 {% if interfaces and perms.dcim.change_interface %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:interface_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_interfaces" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:interface_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_interfaces" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                 {% endif %}
                                 {% if interfaces and perms.dcim.change_interface %}
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:interface_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_interfaces" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if interfaces and perms.dcim.delete_interface %}
                                     <button type="submit" name="_delete" formaction="{% url 'dcim:interface_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_interfaces" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_interface %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:interface_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_interfaces" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add interfaces
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add interfaces
                                         </a>
                                     </div>
                                 {% endif %}
@@ -542,24 +542,24 @@
                             <div class="panel-footer noprint">
                                 {% if frontports and perms.dcim.change_frontport %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:frontport_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_frontports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:frontport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_frontports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:frontport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_frontports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if frontports and perms.dcim.delete_frontport %}
                                     <button type="submit" formaction="{% url 'dcim:frontport_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_frontports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_frontport %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:frontport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_frontports" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add front ports
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add front ports
                                         </a>
                                     </div>
                                 {% endif %}
@@ -584,24 +584,24 @@
                             <div class="panel-footer noprint">
                                 {% if rearports and perms.dcim.change_rearport %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:rearport_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_rearports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:rearport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_rearports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:rearport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_rearports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if rearports and perms.dcim.delete_rearport %}
                                     <button type="submit" formaction="{% url 'dcim:rearport_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_rearports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_rearport %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:rearport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_rearports" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add rear ports
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add rear ports
                                         </a>
                                     </div>
                                 {% endif %}
@@ -626,24 +626,24 @@
                             <div class="panel-footer noprint">
                                 {% if consoleports and perms.dcim.change_consoleport %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:consoleport_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_consoleports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:consoleport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_consoleports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:consoleport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_consoleports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if consoleports and perms.dcim.delete_consoleport %}
                                     <button type="submit" name="_delete" formaction="{% url 'dcim:consoleport_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_consoleports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_consoleport %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:consoleport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_consoleports" class="btn btn-xs btn-primary">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console port
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add console port
                                         </a>
                                     </div>
                                 {% endif %}
@@ -668,24 +668,24 @@
                             <div class="panel-footer noprint">
                                 {% if consoleserverports and perms.dcim.change_consoleserverport %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:consoleserverport_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_consoleserverports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:consoleserverport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_consoleserverports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:consoleserverport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_consoleserverports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if consoleserverports and perms.dcim.delete_consoleserverport %}
                                     <button type="submit" formaction="{% url 'dcim:consoleserverport_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_consoleserverports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_consoleserverport %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:consoleserverport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_consoleserverports" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console server ports
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add console server ports
                                         </a>
                                     </div>
                                 {% endif %}
@@ -710,24 +710,24 @@
                             <div class="panel-footer noprint">
                                 {% if powerports and perms.dcim.change_powerport %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:powerport_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_powerports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:powerport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_powerports" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:powerport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_powerports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if powerports and perms.dcim.delete_powerport %}
                                     <button type="submit" name="_delete" formaction="{% url 'dcim:powerport_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_powerports" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_powerport %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:powerport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_powerports" class="btn btn-xs btn-primary">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add power port
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add power port
                                         </a>
                                     </div>
                                 {% endif %}
@@ -752,24 +752,24 @@
                             <div class="panel-footer noprint">
                                 {% if poweroutlets and perms.dcim.change_powerport %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:poweroutlet_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_poweroutlets" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:poweroutlet_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_poweroutlets" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                     <button type="submit" name="_disconnect" formaction="{% url 'dcim:poweroutlet_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}%23tab_poweroutlets" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                                        <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                                     </button>
                                 {% endif %}
                                 {% if poweroutlets and perms.dcim.delete_poweroutlet %}
                                     <button type="submit" formaction="{% url 'dcim:poweroutlet_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_poweroutlets" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_poweroutlet %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:poweroutlet_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_poweroutlets" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add power outlets
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add power outlets
                                         </a>
                                     </div>
                                 {% endif %}
@@ -794,18 +794,18 @@
                             <div class="panel-footer noprint">
                                 {% if devicebays and perms.dcim.change_devicebay %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:devicebay_bulk_rename' %}?return_url={{ device.get_absolute_url }}%23tab_devicebays" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                 {% endif %}
                                 {% if devicebays and perms.dcim.delete_devicebay %}
                                     <button type="submit" formaction="{% url 'dcim:devicebay_bulk_delete' %}?return_url={{ device.get_absolute_url }}%23tab_devicebays" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete selected
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete selected
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_devicebay %}
                                     <div class="pull-right">
                                         <a href="{% url 'dcim:devicebay_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}%23tab_devicebays" class="btn btn-primary btn-xs">
-                                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add device bays
+                                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add device bays
                                         </a>
                                     </div>
                                 {% endif %}
@@ -830,15 +830,15 @@
                             <div class="panel-footer noprint">
                                 {% if inventoryitems and perms.dcim.change_inventoryitem %}
                                     <button type="submit" name="_rename" formaction="{% url 'dcim:inventoryitem_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                                     </button>
                                     <button type="submit" name="_edit" formaction="{% url 'dcim:inventoryitem_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                                     </button>
                                 {% endif %}
                                 {% if inventoryitems and perms.dcim.delete_inventoryitem %}
                                     <button type="submit" name="_delete" formaction="{% url 'dcim:inventoryitem_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                                     </button>
                                 {% endif %}
                                 {% if perms.dcim.add_inventoryitem %}
@@ -898,7 +898,7 @@ function toggleConnection(elem) {
                 elem.parents('tr').removeClass('success').addClass('info');
                 elem.removeClass('connected btn-warning').addClass('btn-success');
                 elem.attr('title', 'Mark installed');
-                elem.children('i').removeClass('glyphicon glyphicon-ban-circle').addClass('fa fa-plug')
+                elem.children('i').removeClass('mdi mdi-lan-disconnect').addClass('mdi mdi-lan-connect')
             }
         });
     } else {
@@ -917,7 +917,7 @@ function toggleConnection(elem) {
                 elem.parents('tr').removeClass('info').addClass('success');
                 elem.removeClass('btn-success').addClass('connected btn-warning');
                 elem.attr('title', 'Mark planned');
-                elem.children('i').removeClass('fa fa-plug').addClass('glyphicon glyphicon-ban-circle')
+                elem.children('i').removeClass('mdi mdi-lan-connect').addClass('mdi mdi-lan-disconnect')
             }
         });
     }

+ 1 - 1
netbox/templates/dcim/device_edit.html

@@ -41,7 +41,7 @@
                             {{ obj.parent_bay.name }}
                             {% if perms.dcim.change_devicebay %}
                                 <a href="{% url 'dcim:devicebay_depopulate' pk=obj.parent_bay.pk %}" class="btn btn-danger btn-xs">
-                                    <i class="glyphicon glyphicon-remove" aria-hidden="true" title="Remove device"></i> Remove
+                                    <i class="mdi mdi-close-thick" aria-hidden="true" title="Remove device"></i> Remove
                                 </a>
                             {% endif %}
                         </p>

+ 1 - 1
netbox/templates/dcim/device_list.html

@@ -4,7 +4,7 @@
     {% if perms.dcim.change_device %}
         <div class="btn-group">
             <button type="button" class="btn btn-sm btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add Components <span class="caret"></span>
+                <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add Components <span class="caret"></span>
             </button>
             <ul class="dropdown-menu">
                 {% if perms.dcim.add_consoleport %}<li><a href="{% url 'dcim:device_bulk_add_consoleport' %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="formaction">Console Ports</a></li>{% endif %}

+ 3 - 3
netbox/templates/dcim/devicetype.html

@@ -21,7 +21,7 @@
         {% if perms.dcim.change_devicetype %}
             <div class="btn-group">
                 <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                    <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add Components <span class="caret"></span>
+                    <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add Components <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu">
                     {% if perms.dcim.add_consoleporttemplate %}
@@ -109,9 +109,9 @@
                         <td>Full Depth</td>
                         <td>
                             {% if devicetype.is_full_depth %}
-                                <i class="glyphicon glyphicon-ok text-success" title="Yes"></i>
+                                <i class="mdi mdi-check-bold text-success" title="Yes"></i>
                             {% else %}
-                                <i class="glyphicon glyphicon-remove text-danger" title="No"></i>
+                                <i class="mdi mdi-close-thick text-danger" title="No"></i>
                             {% endif %}
                         </td>
                     </tr>

+ 1 - 1
netbox/templates/dcim/frontport.html

@@ -80,7 +80,7 @@
                         {% if perms.dcim.add_cable %}
                             <span class="dropdown pull-right">
                                 <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                    <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                    <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                 </button>
                                     <ul class="dropdown-menu dropdown-menu-right">
                                         <li><a href="{% url 'dcim:frontport_connect' termination_a_id=instance.pk termination_b_type='interface' %}?return_url={{ instance.get_absolute_url }}">Interface</a></li>

+ 5 - 5
netbox/templates/dcim/inc/device_component_table.html

@@ -14,24 +14,24 @@
         <div class="panel-footer noprint">
             {% if components and perms.dcim.change_consoleport %}
                 <button type="submit" name="_rename" formaction="{% url 'dcim:consoleport_bulk_rename' %}?return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
-                    <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                    <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                 </button>
                 <button type="submit" name="_edit" formaction="{% url 'dcim:consoleport_bulk_edit' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-warning btn-xs">
-                    <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                    <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                 </button>
                 <button type="submit" name="_disconnect" formaction="{% url 'dcim:consoleport_bulk_disconnect' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
-                    <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span> Disconnect
+                    <span class="mdi mdi-ethernet-cable-off" aria-hidden="true"></span> Disconnect
                 </button>
             {% endif %}
             {% if components and perms.dcim.delete_consoleport %}
                 <button type="submit" name="_delete" formaction="{% url 'dcim:consoleport_bulk_delete' %}?return_url={{ device.get_absolute_url }}" class="btn btn-danger btn-xs">
-                    <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                    <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                 </button>
             {% endif %}
             {% if components and perms.dcim.add_consoleport %}
                 <div class="pull-right">
                     <a href="{% url 'dcim:consoleport_add' %}?device={{ device.pk }}&return_url={{ device.get_absolute_url }}" class="btn btn-xs btn-primary">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add console port
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add console port
                     </a>
                 </div>
             {% endif %}

+ 4 - 4
netbox/templates/dcim/inc/devicetype_component_table.html

@@ -10,18 +10,18 @@
             <div class="panel-footer noprint">
                 {% if table.rows %}
                     <button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_rename" %}?return_url={{ devicetype.get_absolute_url }}" class="btn btn-xs btn-warning">
-                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                     </button>
                     <button type="submit" name="_edit" formaction="{% url table.Meta.model|viewname:"bulk_edit" %}?return_url={{ devicetype.get_absolute_url }}" class="btn btn-xs btn-warning">
-                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                     </button>
                     <button type="submit" name="_delete" formaction="{% url table.Meta.model|viewname:"bulk_delete" %}?return_url={{ devicetype.get_absolute_url }}" class="btn btn-xs btn-danger">
-                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                     </button>
                 {% endif %}
                 <div class="pull-right">
                     <a href="{% url table.Meta.model|viewname:"add" %}?device_type={{ devicetype.pk }}&return_url={{ devicetype.get_absolute_url }}%23tab_{{ tab }}" class="btn btn-primary btn-xs">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                         Add {{ title }}
                     </a>
                 </div>

+ 1 - 1
netbox/templates/dcim/interface.html

@@ -174,7 +174,7 @@
                             {% if perms.dcim.add_cable %}
                                 <span class="dropdown pull-right">
                                     <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                        <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                        <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                     </button>
                                     <ul class="dropdown-menu dropdown-menu-right">
                                         <li><a href="{% url 'dcim:interface_connect' termination_a_id=instance.pk termination_b_type='interface' %}?return_url={{ instance.get_absolute_url }}">Interface</a></li>

+ 1 - 1
netbox/templates/dcim/powerfeed.html

@@ -207,7 +207,7 @@
                 <div class="panel-body text-muted">
                     {% if perms.dcim.add_cable %}
                         <a href="{% url 'dcim:powerfeed_connect' termination_a_id=powerfeed.pk termination_b_type='power-port' %}?return_url={{ powerfeed.get_absolute_url }}" class="btn btn-primary btn-sm pull-right">
-                            <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                            <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                         </a>
                     {% endif %}
                     Not connected

+ 1 - 1
netbox/templates/dcim/poweroutlet.html

@@ -99,7 +99,7 @@
                         Not connected
                         {% if perms.dcim.add_cable %}
                             <a href="{% url 'dcim:poweroutlet_connect' termination_a_id=instance.pk termination_b_type='power-port' %}?return_url={{ instance.get_absolute_url }}" title="Connect" class="btn btn-primary btn-sm pull-right">
-                                <i class="glyphicon glyphicon-resize-small" aria-hidden="true"></i> Connect
+                                <i class="mdi mdi-ethernet-cable" aria-hidden="true"></i> Connect
                             </a>
                         {% endif %}
                     </div>

+ 1 - 1
netbox/templates/dcim/powerport.html

@@ -100,7 +100,7 @@
                         {% if perms.dcim.add_cable %}
                             <span class="dropdown pull-right">
                                 <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                    <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                    <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                 </button>
                                 <ul class="dropdown-menu dropdown-menu-right">
                                     <li><a href="{% url 'dcim:powerport_connect' termination_a_id=instance.pk termination_b_type='power-outlet' %}?return_url={{ instance.get_absolute_url }}">Power Outlet</a></li>

+ 6 - 6
netbox/templates/dcim/rack.html

@@ -55,7 +55,7 @@
     {% include 'inc/created_updated.html' with obj=rack %}
     <div class="pull-right noprint">
         <button class="btn btn-sm btn-default toggle-images" selected="selected">
-            <span class="glyphicon glyphicon-check" aria-hidden="true"></span> Show Images
+            <span class="mdi mdi-check-bold" aria-hidden="true"></span> Show Images
         </button>
         {% custom_links rack %}
     </div>
@@ -266,7 +266,7 @@
             {% if perms.extras.add_imageattachment %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'dcim:rack_add_image' object_id=rack.pk %}" class="btn btn-primary btn-xs">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                         Attach an image
                     </a>
                 </div>
@@ -303,12 +303,12 @@
                             <td class="text-right noprint">
                                 {% if perms.dcim.change_rackreservation %}
                                     <a href="{% url 'dcim:rackreservation_edit' pk=resv.pk %}?return_url={{ rack.get_absolute_url }}" class="btn btn-warning btn-xs" title="Edit reservation">
-                                        <i class="glyphicon glyphicon-pencil" aria-hidden="true"></i>
+                                        <i class="mdi mdi-pencil" aria-hidden="true"></i>
                                     </a>
                                 {% endif %}
                                 {% if perms.dcim.delete_rackreservation %}
                                     <a href="{% url 'dcim:rackreservation_delete' pk=resv.pk %}?return_url={{ rack.get_absolute_url }}" class="btn btn-danger btn-xs" title="Delete reservation">
-                                        <i class="glyphicon glyphicon-trash" aria-hidden="true"></i>
+                                        <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i>
                                     </a>
                                 {% endif %}
                             </td>
@@ -321,7 +321,7 @@
             {% if perms.dcim.add_rackreservation %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'dcim:rackreservation_add' %}?rack={{ rack.pk }}&return_url={{ rack.get_absolute_url }}" class="btn btn-primary btn-xs">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                         Add a reservation
                     </a>
                 </div>
@@ -374,7 +374,7 @@
             {% if perms.dcim.add_device %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'dcim:device_add' %}?site={{ rack.site.pk }}&rack={{ rack.pk }}" class="btn btn-primary btn-xs">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                         Add a non-racked device
                     </a>
                 </div>

+ 1 - 1
netbox/templates/dcim/rack_elevation_list.html

@@ -5,7 +5,7 @@
 {% block content %}
 <div class="btn-toolbar pull-right noprint" role="toolbar">
     <button class="btn btn-default toggle-images" selected="selected">
-        <span class="glyphicon glyphicon-check" aria-hidden="true"></span> Show Images
+        <span class="mdi mdi-check-bold" aria-hidden="true"></span> Show Images
     </button>
     <div class="btn-group" role="group">
         <a href="{% url 'dcim:rack_elevation_list' %}{% querystring request face='front' %}" class="btn btn-default{% if rack_face == 'front' %} active{% endif %}">Front</a>

+ 1 - 1
netbox/templates/dcim/rearport.html

@@ -74,7 +74,7 @@
                         {% if perms.dcim.add_cable %}
                             <span class="dropdown pull-right">
                                 <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                                    <span class="glyphicon glyphicon-resize-small" aria-hidden="true"></span> Connect
+                                    <span class="mdi mdi-ethernet-cable" aria-hidden="true"></span> Connect
                                 </button>
                                 <ul class="dropdown-menu dropdown-menu-right">
                                     <li><a href="{% url 'dcim:rearport_connect' termination_a_id=instance.pk termination_b_type='interface' %}?return_url={{ instance.get_absolute_url }}">Interface</a></li>

+ 3 - 3
netbox/templates/dcim/site.html

@@ -140,7 +140,7 @@
                         {% if site.physical_address %}
                             <div class="pull-right noprint">
                                 <a href="http://maps.google.com/?q={{ site.physical_address|urlencode }}" target="_blank" class="btn btn-primary btn-xs">
-                                    <i class="glyphicon glyphicon-map-marker"></i> Map it
+                                    <i class="mdi mdi-map-marker"></i> Map it
                                 </a>
                             </div>
                             <span>{{ site.physical_address|linebreaksbr }}</span>
@@ -159,7 +159,7 @@
                         {% if site.latitude and site.longitude %}
                             <div class="pull-right noprint">
                                 <a href="http://maps.google.com/?q={{ site.latitude }},{{ site.longitude }}" target="_blank" class="btn btn-primary btn-xs">
-                                    <i class="glyphicon glyphicon-map-marker"></i> Map it
+                                    <i class="mdi mdi-map-marker"></i> Map it
                                 </a>
                             </div>
                             <span>{{ site.latitude }}, {{ site.longitude }}</span>
@@ -277,7 +277,7 @@
             {% if perms.extras.add_imageattachment %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'dcim:site_add_image' object_id=site.pk %}" class="btn btn-primary btn-xs">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                         Attach an image
                     </a>
                 </div>

+ 1 - 1
netbox/templates/dcim/virtualchassis.html

@@ -108,7 +108,7 @@
             {% if perms.dcim.change_virtualchassis %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'dcim:virtualchassis_add_member' pk=virtualchassis.pk %}?site={{ virtualchassis.master.site.pk }}&rack={{ virtualchassis.master.rack.pk }}" class="btn btn-primary btn-xs">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add Member
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add Member
                     </a>
                 </div>
             {% endif %}

+ 1 - 1
netbox/templates/dcim/virtualchassis_edit.html

@@ -83,7 +83,7 @@
                                         <td>
                                             {% 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-xs{% if virtual_chassis.master == device %} disabled{% endif %}">
-                                                    <span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
+                                                    <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span>
                                                 </a>
                                             {% endif %}
                                         </td>

+ 1 - 1
netbox/templates/extras/configcontext.html

@@ -26,7 +26,7 @@
     <div class="pull-right noprint">
         {% if perms.extras.change_configcontext %}
             <a href="{% url 'extras:configcontext_edit' pk=configcontext.pk %}" class="btn btn-warning">
-                <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
+                <span class="mdi mdi-pencil" aria-hidden="true"></span>
                 Edit this config context
             </a>
         {% endif %}

+ 2 - 2
netbox/templates/extras/tag.html

@@ -25,13 +25,13 @@
     <div class="pull-right">
         {% if perms.taggit.change_tag %}
             <a href="{% url 'extras:tag_edit' slug=tag.slug %}" class="btn btn-warning">
-                <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
+                <span class="mdi mdi-pencil" aria-hidden="true"></span>
                 Edit this tag
             </a>
         {% endif %}
         {% if perms.taggit.delete_tag %}
             <a href="{% url 'extras:tag_delete' slug=tag.slug %}" class="btn btn-danger">
-                <span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
+                <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span>
                 Delete this tag
             </a>
         {% endif %}

+ 2 - 2
netbox/templates/inc/custom_fields_panel.html

@@ -10,9 +10,9 @@
                         <td><span title="{{ field.description }}">{{ field }}</span></td>
                         <td>
                             {% if field.type == 'boolean' and value == True %}
-                                <i class="glyphicon glyphicon-ok text-success" title="True"></i>
+                                <i class="mdi mdi-check-bold text-success" title="True"></i>
                             {% elif field.type == 'boolean' and value == False %}
-                                <i class="glyphicon glyphicon-remove text-danger" title="False"></i>
+                                <i class="mdi mdi-close-thick text-danger" title="False"></i>
                             {% elif field.type == 'url' and value %}
                                 <a href="{{ value }}">{{ value|truncatechars:70 }}</a>
                             {% elif value is not None %}

+ 2 - 2
netbox/templates/inc/image_attachments.html

@@ -17,12 +17,12 @@
                 <td class="text-right noprint">
                     {% if perms.extras.change_imageattachment %}
                         <a href="{% url 'extras:imageattachment_edit' pk=attachment.pk %}" class="btn btn-warning btn-xs" title="Edit image">
-                            <i class="glyphicon glyphicon-pencil" aria-hidden="true"></i>
+                            <i class="mdi mdi-pencil" aria-hidden="true"></i>
                         </a>
                     {% endif %}
                     {% if perms.extras.delete_imageattachment %}
                         <a href="{% url 'extras:imageattachment_delete' pk=attachment.pk %}" class="btn btn-danger btn-xs" title="Delete image">
-                            <i class="glyphicon glyphicon-trash" aria-hidden="true"></i>
+                            <i class="mdi mdi-trash-can-outline" aria-hidden="true"></i>
                         </a>
                     {% endif %}
                 </td>

+ 2 - 2
netbox/templates/ipam/inc/service.html

@@ -16,12 +16,12 @@
         </a>
         {% if perms.ipam.change_service %}
             <a href="{% url 'ipam:service_edit' pk=service.pk %}?return_url={{ service.parent.get_absolute_url }}" class="btn btn-info btn-xs" title="Edit service">
-                <i class="glyphicon glyphicon-pencil"></i>
+                <i class="mdi mdi-pencil"></i>
             </a>
         {% endif %}
         {% if perms.ipam.delete_service %}
             <a href="{% url 'ipam:service_delete' pk=service.pk %}?return_url={{ service.parent.get_absolute_url }}" class="btn btn-danger btn-xs">
-                <i class="glyphicon glyphicon-trash" title="Delete service"></i>
+                <i class="mdi mdi-trash-can-outline" title="Delete service"></i>
             </a>
         {% endif %}
     </td>

+ 2 - 2
netbox/templates/ipam/prefix.html

@@ -175,9 +175,9 @@
                         <td>Is a pool</td>
                         <td>
                             {% if prefix.is_pool %}
-                                <i class="glyphicon glyphicon-ok text-success" title="Yes"></i>
+                                <i class="mdi mdi-check-bold text-success" title="Yes"></i>
                             {% else %}
-                                <i class="glyphicon glyphicon-remove text-danger" title="No"></i>
+                                <i class="mdi mdi-close-thick text-danger" title="No"></i>
                             {% endif %}
                         </td>
                     </tr>

+ 1 - 1
netbox/templates/ipam/vlan.html

@@ -155,7 +155,7 @@
                 {% if perms.ipam.add_prefix %}
                     <div class="panel-footer text-right noprint">
                         <a href="{% url 'ipam:prefix_add' %}?{% if vlan.tenant %}tenant={{ vlan.tenant.pk }}&{% endif %}site={{ vlan.site.pk }}&vlan={{ vlan.pk }}" class="btn btn-primary btn-xs">
-                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                             Add a prefix
                         </a>
                     </div>

+ 2 - 2
netbox/templates/ipam/vrf.html

@@ -80,9 +80,9 @@
                     <td>Unique IP Space</td>
                     <td>
                         {% if vrf.enforce_unique %}
-                            <i class="glyphicon glyphicon-ok text-success" title="Yes"></i>
+                            <i class="mdi mdi-check-bold text-success" title="Yes"></i>
                         {% else %}
-                            <i class="glyphicon glyphicon-remove text-danger" title="No"></i>
+                            <i class="mdi mdi-close-thick text-danger" title="No"></i>
                         {% endif %}
                     </td>
                 </tr>

+ 1 - 1
netbox/templates/users/preferences.html

@@ -26,7 +26,7 @@
                 </tbody>
             </table>
             <button type="submit" class="btn btn-danger">
-                <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Clear Selected
+                <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Clear Selected
             </button>
         </form>
     {% else %}

+ 4 - 4
netbox/templates/utilities/obj_list.html

@@ -39,12 +39,12 @@
                             <div class="pull-right">
                                 {% if bulk_edit_url and permissions.change %}
                                     <button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning btn-sm" disabled="disabled">
-                                        <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit All
+                                        <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit All
                                     </button>
                                 {% endif %}
                                 {% if bulk_delete_url and permissions.delete %}
                                     <button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger btn-sm" disabled="disabled">
-                                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete All
+                                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete All
                                     </button>
                                 {% endif %}
                             </div>
@@ -56,12 +56,12 @@
                     {% block bulk_buttons %}{% endblock %}
                     {% if bulk_edit_url and permissions.change %}
                         <button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning btn-sm">
-                            <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit Selected
+                            <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit Selected
                         </button>
                     {% endif %}
                     {% if bulk_delete_url and permissions.delete %}
                         <button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger btn-sm">
-                            <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete Selected
+                            <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete Selected
                         </button>
                     {% endif %}
                 </div>

+ 4 - 4
netbox/templates/utilities/obj_table.html

@@ -15,12 +15,12 @@
                     <div class="pull-right">
                         {% if bulk_edit_url and permissions.change %}
                             <button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if bulk_querystring %}?{{ bulk_querystring }}{% elif request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning btn-sm" disabled="disabled">
-                                <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit All
+                                <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit All
                             </button>
                         {% endif %}
                         {% if bulk_delete_url and permissions.delete %}
                             <button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if bulk_querystring %}?{{ bulk_querystring }}{% elif request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger btn-sm" disabled="disabled">
-                                <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete All
+                                <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete All
                             </button>
                         {% endif %}
                     </div>
@@ -32,12 +32,12 @@
             {% block extra_actions %}{% endblock %}
             {% if bulk_edit_url and permissions.change %}
                 <button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning btn-sm">
-                    <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit Selected
+                    <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit Selected
                 </button>
             {% endif %}
             {% if bulk_delete_url and permissions.delete %}
                 <button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger btn-sm">
-                    <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete Selected
+                    <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete Selected
                 </button>
             {% endif %}
         </div>

+ 2 - 2
netbox/templates/virtualization/cluster.html

@@ -139,12 +139,12 @@
                 <div class="panel-footer noprint">
                     <div class="pull-right">
                         <a href="{% url 'virtualization:cluster_add_devices' pk=cluster.pk %}?site={{ cluster.site.pk }}" class="btn btn-primary btn-xs">
-                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
+                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span>
                             Add devices
                         </a>
                     </div>
                     <button type="submit" name="_remove" class="btn btn-danger primary btn-xs">
-                        <span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
+                        <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span>
                         Remove devices
                     </button>
                 </div>

+ 7 - 7
netbox/templates/virtualization/virtualmachine.html

@@ -31,7 +31,7 @@
     <div class="pull-right noprint">
         {% if perms.virtualization.add_vminterface %}
             <a href="{% url 'virtualization:vminterface_add' %}?virtual_machine={{ virtualmachine.pk }}&return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-primary">
-                <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add Interfaces
+                <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add Interfaces
             </a>
         {% endif %}
         {% plugin_buttons virtualmachine %}
@@ -229,7 +229,7 @@
                 {% if perms.secrets.add_secret %}
                     <div class="panel-footer text-right noprint">
                         <a href="{% url 'secrets:secret_add' %}?virtual_machine={{ virtualmachine.pk }}&return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-xs btn-primary">
-                            <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add secret
+                            <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add secret
                         </a>
                     </div>
                 {% endif %}
@@ -253,7 +253,7 @@
             {% if perms.ipam.add_service %}
                 <div class="panel-footer text-right noprint">
                     <a href="{% url 'virtualization:virtualmachine_service_assign' virtualmachine=virtualmachine.pk %}" class="btn btn-xs btn-primary">
-                        <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Assign service
+                        <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Assign service
                     </a>
                 </div>
             {% endif %}
@@ -285,21 +285,21 @@
                 <div class="panel-footer noprint">
                     {% if interfaces and perms.virtualization.change_vminterface %}
                         <button type="submit" name="_rename" formaction="{% url 'virtualization:vminterface_bulk_rename' %}?return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-warning btn-xs">
-                            <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Rename
+                            <span class="mdi mdi-pencil" aria-hidden="true"></span> Rename
                         </button>
                         <button type="submit" name="_edit" formaction="{% url 'virtualization:vminterface_bulk_edit' %}?return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-warning btn-xs">
-                            <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> Edit
+                            <span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
                         </button>
                     {% endif %}
                     {% if interfaces and perms.virtualization.delete_vminterface %}
                         <button type="submit" name="_delete" formaction="{% url 'virtualization:vminterface_bulk_delete' %}?return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-danger btn-xs">
-                            <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> Delete
+                            <span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
                         </button>
                     {% endif %}
                     {% if perms.virtualization.add_vminterface %}
                         <div class="pull-right">
                             <a href="{% url 'virtualization:vminterface_add' %}?virtual_machine={{ virtualmachine.pk }}&return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-primary btn-xs">
-                                <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add interfaces
+                                <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add interfaces
                             </a>
                         </div>
                         <div class="clearfix"></div>

+ 1 - 1
netbox/templates/virtualization/virtualmachine_list.html

@@ -4,7 +4,7 @@
     {% if perms.virtualization.change_virtualmachine %}
         <div class="btn-group">
             <button type="button" class="btn btn-sm btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
-                <span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add Components <span class="caret"></span>
+                <span class="mdi mdi-plus-thick" aria-hidden="true"></span> Add Components <span class="caret"></span>
             </button>
             <ul class="dropdown-menu">
                 {% if perms.dcim.add_interface %}<li><a href="{% url 'virtualization:virtualmachine_bulk_add_vminterface' %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="formaction">Interfaces</a></li>{% endif %}

+ 1 - 1
netbox/virtualization/tables.py

@@ -20,7 +20,7 @@ __all__ = (
 VMINTERFACE_BUTTONS = """
 {% if perms.ipam.add_ipaddress %}
     <a href="{% url 'ipam:ipaddress_add' %}?vminterface={{ record.pk }}&return_url={{ virtualmachine.get_absolute_url }}" class="btn btn-xs btn-success" title="Add IP address">
-        <i class="glyphicon glyphicon-plus" aria-hidden="true"></i>
+        <i class="mdi mdi-plus-thick" aria-hidden="true"></i>
     </a>
 {% endif %}
 """