mirror of
https://github.com/JonnyBro/JaBa.git
synced 2024-11-23 05:34:58 +05:00
176 lines
No EOL
6.4 KiB
Text
176 lines
No EOL
6.4 KiB
Text
<!DOCTYPE html>
|
|
<html>
|
|
|
|
<%- include("../includes/head") %>
|
|
|
|
<!-- bootstrap datepicker -->
|
|
<link rel="stylesheet" href="/bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css">
|
|
|
|
<body class="hold-transition skin-red sidebar-mini">
|
|
|
|
<div class="wrapper">
|
|
|
|
<!-- The header is the topbar -->
|
|
<%- include("../includes/header") %>
|
|
|
|
<!-- The sidebar includes the menu -->
|
|
<%- include("../includes/sidebar") %>
|
|
|
|
<!-- Content Wrapper. Contains page content -->
|
|
<div class="content-wrapper">
|
|
|
|
<!-- Content Header (Page header) -->
|
|
<section class="content-header">
|
|
<h1> <%= translate("dashboard:STATS") %> <i> <%= bot.guilds.cache.get(guildID).name %> </i> <small> Dashboard v1.0.5 </small> </h1>
|
|
</section>
|
|
|
|
<!-- Main content -->
|
|
<section class="content">
|
|
<!-- Main row -->
|
|
<div class="row">
|
|
<!-- Left col -->
|
|
<section class="col-lg-8 col-sm-2 connectedSortable">
|
|
<!-- Custom tabs (Charts with tabs)-->
|
|
<div class="nav-tabs-custom">
|
|
<!-- Tabs within a box -->
|
|
<ul class="nav nav-tabs pull-right">
|
|
<li class="active"><a href="#rank-money" data-toggle="tab">
|
|
<%= translate("common:CREDITS") %></a></li>
|
|
<li><a href="#rank-level" data-toggle="tab">
|
|
<%= translate("common:LEVEL") %></a></li>
|
|
<li class="pull-left header"><i class="fa fa-trophy"></i>
|
|
<%= "Таблица лидеров" %></li>
|
|
</ul>
|
|
<div class="tab-content">
|
|
<div class="tab-pane active" id="rank-money" style="position: relative; height: 300px;">
|
|
<div class="chart">
|
|
<canvas id="Crank-money" style="height:230px"></canvas>
|
|
</div>
|
|
</div>
|
|
<div class="tab-pane active" id="rank-level" style="position: relative; height: 300px;">
|
|
<div class="chart">
|
|
<canvas id="Crank-level" style="height:230px"></canvas>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- /.nav-tabs-custom -->
|
|
<div class="col-md-6 col-sm-6 col-xs-12">
|
|
<div class="info-box">
|
|
<span class="info-box-icon bg-yellow"><i class="fa fa-refresh"></i></span>
|
|
<div class="info-box-content">
|
|
<span class="info-box-text"><%= translate("dashboard:COOLDOWNS") %></span>
|
|
<span class="info-box-number"><%= translate("dashboard:REP") %>: <%= user.cooldowns.rep > Date.now() ? convertTime(user.cooldowns.rep) : translate("dashboard:CAN_USE") %></span>
|
|
<% for (const c in memberData.cooldowns) { %>
|
|
<% if (c !== "rob") { %>
|
|
<span class="info-box-number"><%= translate("dashboard:" + c.toUpperCase()) %>: <%= memberData.cooldowns[c] > Date.now() ? convertTime(memberData.cooldowns[c]) : translate("dashboard:CAN_USE") %></span>
|
|
<% } else { %>
|
|
<span class="info-box-number"><%= translate("dashboard:" + c.toUpperCase()) %>: <%= memberData.cooldowns[c] > Date.now() ? convertTime(memberData.cooldowns[c]) : translate("dashboard:NO_DEFENCE") %></span>
|
|
<% }; %>
|
|
<% }; %>
|
|
</div>
|
|
<!-- /.info-box-content -->
|
|
</div>
|
|
<!-- /.info-box -->
|
|
</div>
|
|
<!-- /.col -->
|
|
</section>
|
|
<!-- /.col -->
|
|
<div class="col-md-4">
|
|
<!-- Widget: user widget style 1 -->
|
|
<div class="box box-widget widget-user-2">
|
|
<!-- Add the bg color to the header using any of the bg-* classes -->
|
|
<div class="widget-user-header bg-yellow">
|
|
<div class="widget-user-image">
|
|
<img class="img-circle" src="<%= stats.money[0].displayAvatarURL %>"
|
|
alt="User Avatar">
|
|
</div>
|
|
<!-- /.widget-user-image -->
|
|
<h3 class="widget-user-username"><a href="/user/<%= stats.money[0].id %>/<%= guildID %>"
|
|
style="color:white"><%= stats.money[0].username %></a></h3>
|
|
<h5 class="widget-user-desc"><%= translate("dashboard:TOP_CREDITS") %></h5>
|
|
</div>
|
|
</div>
|
|
<!-- /.widget-user -->
|
|
</div>
|
|
<!-- /.col -->
|
|
<div class="col-md-4">
|
|
<!-- Widget: user widget style 1 -->
|
|
<div class="box box-widget widget-user-2">
|
|
<!-- Add the bg color to the header using any of the bg-* classes -->
|
|
<div class="widget-user-header bg-red">
|
|
<div class="widget-user-image">
|
|
<img class="img-circle" src="<%= stats.level[0].displayAvatarURL %>"
|
|
alt="User Avatar">
|
|
</div>
|
|
<!-- /.widget-user-image -->
|
|
<h3 class="widget-user-username"><a href="/user/<%= stats.level[0].id %>/<%= guildID %>"
|
|
style="color:white"><%= stats.level[0].username %></a></h3>
|
|
<h5 class="widget-user-desc"><%= translate("dashboard:TOP_LEVEL") %></h5>
|
|
</div>
|
|
</div>
|
|
<!-- /.widget-user -->
|
|
</div>
|
|
<!-- ./box -->
|
|
</div>
|
|
</section>
|
|
<!-- /.content -->
|
|
</div>
|
|
<!-- /.content-wrapper -->
|
|
<%- include("../includes/footer") %>
|
|
</div>
|
|
<!-- ./wrapper -->
|
|
<!-- bootstrap datepicker -->
|
|
<script src="/bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
|
|
<!-- ChartJS -->
|
|
<script src="/bower_components/chart.js/Chart.js"></script>
|
|
<script>
|
|
$(function () {
|
|
$("#datepicker").datepicker({
|
|
autoclose: true
|
|
});
|
|
|
|
/* LEADERBOARD */
|
|
let values = ["money", "level"];
|
|
values.forEach((value) => {
|
|
let members = JSON.parse(`<%- JSON.stringify(stats) %>`)[value].sort((a, b) => a - b);
|
|
let data = {
|
|
labels: members.map(a => a.username),
|
|
datasets: [{
|
|
label: "Leaderboard " + value,
|
|
fillColor: "#00a65a",
|
|
strokeColor: "#00a65a",
|
|
pointColor: "#00a65a",
|
|
pointStrokeColor: "rgba(60,141,188,1)",
|
|
pointHighlightFill: "#fff",
|
|
pointHighlightStroke: "rgba(60,141,188,1)",
|
|
data: members.map(a => a[value])
|
|
}]
|
|
},
|
|
leaderboardCanvas = $("#Crank-" + value).get(0).getContext("2d"),
|
|
leaderboard = new Chart(leaderboardCanvas),
|
|
leaderboardData = data,
|
|
leaderboardOptions = {
|
|
scaleBeginAtZero: !0,
|
|
scaleShowGridLines: !0,
|
|
scaleGridLineColor: "rgba(0,0,0,.05)",
|
|
scaleGridLineWidth: 1,
|
|
scaleShowHorizontalLines: !0,
|
|
scaleShowVerticalLines: !0,
|
|
barShowStroke: !0,
|
|
barStrokeWidth: 2,
|
|
barValueSpacing: 5,
|
|
barDatasetSpacing: 1,
|
|
responsive: !0,
|
|
maintainAspectRatio: !0
|
|
};
|
|
leaderboardOptions.datasetFill = false
|
|
leaderboard.Bar(leaderboardData, leaderboardOptions);
|
|
});
|
|
|
|
$(`.tab-content > div[class="tab-pane active"]`).slice(1, 23).removeClass("active");
|
|
});
|
|
</script>
|
|
</body>
|
|
|
|
</html> |