Current File : /home/pacjaorg/public_html/2024/wp-content/plugins/newsletter/users/statistics-time.php |
<?php
defined('ABSPATH') || exit;
?>
<div style="height: 300px;">
<canvas id="tnp-users-chart-days"></canvas>
</div>
<div style="height: 300px;">
<canvas id="tnp-users-chart-months"></canvas>
</div>
<div class="row">
<div class="col-md-6">
<?php
$dt = new DateTime();
$dt->setTime(12, 0, 0)->setDate((int) date('Y'), (int) date('m'), 1);
$i = new DateInterval('P1M');
$months = [];
for ($x = 1; $x <= 24; $x++) {
$months[] = $dt->format('Y-m');
$dt->sub($i);
}
$months = array_reverse($months);
$list = $wpdb->get_results("select concat(year(created), '-', date_format(created, '%m')) as d, count(*) as c from " . NEWSLETTER_USERS_TABLE . " where status='C' group by concat(year(created), '-', date_format(created, '%m')) order by d desc limit 24", OBJECT_K);
$dataMonths = [];
foreach ($months as $month) {
$dataMonths[] = isset($list[$month]) ? $list[$month]->c : 0;
}
?>
<?php /*
<table class="widefat">
<thead>
<tr>
<th><?php _e('Year and month', 'newsletter') ?></th>
<th><?php _e('Total', 'newsletter') ?></th>
</tr>
</thead>
<?php foreach ($months as $month) { ?>
<tr>
<td><?php echo $month; ?></td>
<td><?php echo isset($list[$month]) ? $list[$month]->c : 0; ?></td>
</tr>
<?php } ?>
</table>
*/?>
</div>
<div class="col-md-6">
<?php
$dt = new DateTime();
$dt->setTime(12, 0, 0);
$i = new DateInterval('P1D');
$days = [];
for ($x = 1; $x <= 90; $x++) {
$days[] = $dt->format('Y-m-d');
$dt->sub($i);
}
$days = array_reverse($days);
$list = $wpdb->get_results("select date(created) as d, count(*) as c from " . NEWSLETTER_USERS_TABLE . " where status='C' group by date(created) order by d desc limit 90", OBJECT_K);
$dataDays = [];
foreach ($days as $day) {
$dataDays[] = isset($list[$day]) ? $list[$day]->c : 0;
}
?>
<?php /*
<table class="widefat">
<thead>
<tr>
<th><?php _e('Date', 'newsletter') ?></th>
<th><?php _e('Total', 'newsletter') ?></th>
</tr>
</thead>
<?php for ($i = 0; $i < count($days); $i++) { ?>
<tr>
<td><?php echo $days[$i]; ?></td>
<td><?php echo $dataDays[$i] ?></td>
</tr>
<?php } ?>
</table>
*/?>
</div>
</div>
<script>
const dataDays = {
labels: <?php echo wp_json_encode($days) ?>,
datasets: [{
label: 'By day',
borderColor: '#3498DB',
borderWidth: 1,
data: <?php echo wp_json_encode($dataDays) ?>,
}]
};
const dataMonths = {
labels: <?php echo wp_json_encode($months) ?>,
datasets: [{
label: 'By month',
borderColor: '#3498DB',
borderWidth: 1,
data: <?php echo wp_json_encode($dataMonths) ?>,
}]
};
jQuery(function () {
const myChart = new Chart(
document.getElementById('tnp-users-chart-days'),
{
type: 'line',
data: dataDays,
options: {
maintainAspectRatio: false,
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}]
}
}
}
);
const myChartMonths = new Chart(
document.getElementById('tnp-users-chart-months'),
{
type: 'line',
data: dataMonths,
options: {
maintainAspectRatio: false,
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}]
}
}
}
);
});
</script>