135 lines
5.9 KiB
Twig
135 lines
5.9 KiB
Twig
{% extends 'backend/basic/base_admin.html.twig' %}
|
|
|
|
{% block title %} Dashboard {% endblock %}
|
|
|
|
{% block body %}
|
|
|
|
<h1 class="h3 mb-3">
|
|
<strong>Analytics</strong> Dashboard
|
|
</h1>
|
|
<div class="row">
|
|
<div class="col-xl-6 col-xxl-5 d-flex">
|
|
<div class="w-100">
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col mt-0">
|
|
<h5 class="card-title">Visitors </h5>
|
|
</div>
|
|
<div class="col-auto">
|
|
<div class="stat text-primary">
|
|
<i class="align-middle" data-feather="twitter"></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<h1 class="mt-1 mb-3">{{ nbrVisitors }}</h1>
|
|
<div class="mb-0">
|
|
<span class="text-muted">Visiteurs le jour</span>
|
|
<span class="text-success"> <i class="mdi mdi-arrow-bottom-right"></i> {{ dateNow }} </span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col mt-0">
|
|
<h5 class="card-title">Partner</h5>
|
|
</div>
|
|
<div class="col-auto">
|
|
<div class="stat text-primary">
|
|
<i class="align-middle" data-feather="users"></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<h1 class="mt-1 mb-3">----</h1>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col mt-0">
|
|
<h5 class="card-title">Utilisateurs</h5>
|
|
</div>
|
|
<div class="col-auto">
|
|
<div class="stat text-primary">
|
|
<i class="align-middle" data-feather="user"></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<h1 class="mt-1 mb-3">{{ nbrUsers }}</h1>
|
|
<div class="mb-0">
|
|
<span class="text-muted">Inscrits le jour</span>
|
|
<span class="text-info"> <i class="mdi mdi-arrow-bottom-right"></i> {{ dateNow }} </span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col mt-0">
|
|
<h5 class="card-title">Téléchargement</h5>
|
|
</div>
|
|
<div class="col-auto">
|
|
<div class="stat text-primary">
|
|
<i class="align-middle" data-feather="download-cloud"></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<h1 class="mt-1 mb-3">{{ nbrDownloaders }}</h1>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-xl-6 col-xxl-7">
|
|
<div class="card flex-fill w-100">
|
|
<div class="card-header">
|
|
<h5 class="card-title mb-0">Recent Movement</h5>
|
|
</div>
|
|
<div class="card-body py-3">
|
|
<div class="chart chart-sm">
|
|
<canvas id="chartjs-dashboard-line"></canvas>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="card flex-fill">
|
|
<div class="card-header">
|
|
<h5 class="card-title mb-0">Liste Visiteurs pour aujourd'hui</h5>
|
|
</div>
|
|
<table class="table table-hover my-0">
|
|
<thead>
|
|
<tr>
|
|
<th>IP</th>
|
|
<th class="d-none d-xl-table-cell">Date</th>
|
|
<th>Drapeau</th>
|
|
<th class="d-none d-xl-table-cell">Pays</th>
|
|
<th class="d-none d-xl-table-cell">Arrondissement</th>
|
|
<th class="d-none d-md-table-cell">Ville</th>
|
|
<th class="d-none d-md-table-cell">ISP</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for geolocation in geolocations %}
|
|
<tr>
|
|
<td>{{ geolocation.getIp() }}</td>
|
|
<td class="d-none d-xl-table-cell">{{ geolocation.getDateAdd()|date("d/m/Y H:i:s") }}</td>
|
|
<td>{{ geolocation.getCountryEmoji() }}</td>
|
|
<td class="d-none d-xl-table-cell">{{ geolocation.getCountryName() }}</td>
|
|
<td class="d-none d-xl-table-cell">{{ geolocation.getDistrict() }}</td>
|
|
<td class="d-none d-md-table-cell">{{ geolocation.getCity() }}</td>
|
|
<td class="d-none d-md-table-cell">{{ geolocation.getOrganization() }}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
{% endblock %}
|