Add icons to home stat cards

This commit is contained in:
checktheroads 2021-07-19 22:01:05 -07:00
parent 5ec0ad6913
commit 91246b0f81
2 changed files with 20 additions and 13 deletions

View File

@ -94,17 +94,17 @@ class HomeView(View):
("dcim.view_powerfeed", "Power Feeds", PowerFeed.objects.restrict(request.user, 'view').count), ("dcim.view_powerfeed", "Power Feeds", PowerFeed.objects.restrict(request.user, 'view').count),
) )
sections = ( sections = (
("Organization", org), ("Organization", org, "domain"),
("IPAM", ipam), ("IPAM", ipam, "counter"),
("Virtualization", virtualization), ("Virtualization", virtualization, "monitor"),
("Inventory", dcim), ("Inventory", dcim, "server"),
("Connections", connections), ("Connections", connections, "cable-data"),
("Circuits", circuits), ("Circuits", circuits, "transit-connection-variant"),
("Power", power), ("Power", power, "flash"),
) )
stats = [] stats = []
for section_label, section_items in sections: for section_label, section_items, icon_class in sections:
items = [] items = []
for perm, item_label, get_count in section_items: for perm, item_label, get_count in section_items:
app, scope = perm.split(".") app, scope = perm.split(".")
@ -113,13 +113,14 @@ class HomeView(View):
"label": item_label, "label": item_label,
"count": None, "count": None,
"url": url, "url": url,
"disabled": True "disabled": True,
"icon": icon_class,
} }
if request.user.has_perm(perm): if request.user.has_perm(perm):
item["count"] = get_count() item["count"] = get_count()
item["disabled"] = False item["disabled"] = False
items.append(item) items.append(item)
stats.append((section_label, items)) stats.append((section_label, items, icon_class))
return stats return stats

View File

@ -27,10 +27,13 @@
{# General stats #} {# General stats #}
<div class="row masonry"> <div class="row masonry">
{% for section, items in stats %} {% for section, items, icon in stats %}
<div class="col col-sm-12 col-lg-6 col-xl-4 my-2 masonry-item"> <div class="col col-sm-12 col-lg-6 col-xl-4 my-2 masonry-item">
<div class="card"> <div class="card">
<h6 class="card-header text-primary text-center">{{ section }}</h6> <h6 class="card-header text-primary text-center">
<i class="mdi mdi-{{ icon }}"></i>
<span class="ms-1">{{ section }}</span>
</h6>
<div class="card-body"> <div class="card-body">
<div class="list-group list-group-flush"> <div class="list-group list-group-flush">
{% for item in items %} {% for item in items %}
@ -64,7 +67,10 @@
<div class="row my-4 flex-grow-1 changelog-container"> <div class="row my-4 flex-grow-1 changelog-container">
<div class="col"> <div class="col">
<div class="card"> <div class="card">
<h6 class="card-header text-primary text-center">Change Log</h6> <h6 class="card-header text-primary text-center">
<i class="mdi mdi-clipboard-clock"></i>
<span class="ms-1">Change Log</span>
</h6>
<div class="card-body"> <div class="card-body">
{% include 'inc/responsive_table.html' with table=changelog_table %} {% include 'inc/responsive_table.html' with table=changelog_table %}
</div> </div>