Skip to content
Snippets Groups Projects
Commit 0d2af35b authored by Tim Fechner's avatar Tim Fechner
Browse files

Improve dashboard, add numberic statistic fields

parent 1ca651a7
No related branches found
No related tags found
1 merge request!1Improve dashboard, add numberic statistic fields
Pipeline #
......@@ -5,6 +5,7 @@
@import (inline) "../../../node_modules/vis/dist/vis.css";
/* Now import own styles */
@import "variables.less";
@import "base.less";
@import "login.less";
@import "sidebar.less";
......
......@@ -6,3 +6,18 @@
border-top: 1px solid #ddd;
}
.numeric-info {
text-align: center;
border: 1px solid #ddd;
padding: 25px 0px;
margin-bottom: 25px;
.number {
display: block;
font-size: 35px;
}
.description {
display: block;
}
}
@navy: #001f3f;
@blue: #0074D9;
@aqua: #7FDBFF;
@teal: #39CCCC;
@olive: #3D9970;
@green: #2ECC40;
@lime: #01FF70;
@yellow: #FFDC00;
@orange: #FF851B;
@red: #FF4136;
@maroon: #85144b;
@fuchsia: #F012BE;
@purple: #B10DC9;
@black: #111111;
@gray: #AAAAAA;
@silver: #DDDDDD;
Source diff could not be displayed: it is too large. Options to address this: view the blob.
......@@ -6,12 +6,35 @@
{% block home-content %}
<div class="row">
<div class="col-md-6 col-lg-8">
<div class="col-sm-6 col-md-3">
<div class="numeric-info">
<span class="number">{{ all_minions|length }}</span>
<span class="description">Minions</span>
</div>
</div>
<div class="col-sm-6 col-md-3">
<div class="numeric-info">
<span class="number">{{ all_networks|length }}</span>
<span class="description">Networks</span>
</div>
</div>
<div class="col-sm-6 col-md-3">
<div class="numeric-info">
<span class="number">{{ all_domains|length }}</span>
<span class="description">Domains</span>
</div>
</div>
<div class="col-sm-6 col-md-3">
<div class="numeric-info">
<span class="number">{{ all_users|length }}</span>
<span class="description">Users</span>
</div>
</div>
</div>
<div class="col-md-6 col-lg-4">
<div class="panel panel-danger">
<div class="row">
<div class="col-lg-4">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Fullest 5 Minions</h3>
</div>
......@@ -32,8 +55,9 @@
</tbody>
</table>
</div>
<div class="panel panel-info">
</div>
<div class="col-lg-4">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Worst 5 outdated Minions</h3>
</div>
......@@ -54,8 +78,9 @@
</tbody>
</table>
</div>
<div class="panel panel-info">
</div>
<div class="col-lg-4">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Worst 5 Certs</h3>
</div>
......
from django.contrib.auth.models import User
from django.template import Context, Template
from django.views.generic import View, TemplateView
from django.views.generic.list import ListView
......@@ -69,11 +70,19 @@ class Dashboard(TemplateView):
template_name = 'home/dashboard.html'
def get_context_data(self, *args, **kwargs):
all_minions = Minion.objects.all()
all_networks = Network.objects.all()
all_domains = Domain.objects.all()
ctx = super().get_context_data(*args, **kwargs)
ctx.update({
'w5_outdated_minions': sorted(Minion.objects.all(), key=lambda m: m.outdated_package_count(), reverse=True)[:5],
'w5_fullest_minions': sorted(Minion.objects.all(), key=lambda m: m.fullest_partition_percentage(), reverse=True)[:5],
'w5_domain_ssl_grades': sorted(Domain.objects.all(), key=lambda d: d.worst_grade(), reverse=True)[:5],
'all_minions': all_minions,
'all_networks': all_networks,
'all_domains': all_domains,
'all_users': User.objects.all(),
'w5_outdated_minions': sorted(all_minions, key=lambda m: m.outdated_package_count(), reverse=True)[:5],
'w5_fullest_minions': sorted(all_minions, key=lambda m: m.fullest_partition_percentage(), reverse=True)[:5],
'w5_domain_ssl_grades': sorted(all_domains, key=lambda d: d.worst_grade(), reverse=True)[:5],
})
return ctx
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment