#1 Stats data

This commit is contained in:
Daniel Brendel
2022-09-30 22:02:24 +02:00
parent cb6524ae57
commit 9882c30692
7 changed files with 24 additions and 9 deletions

View File

@ -28,7 +28,6 @@ class ApiController extends BaseController {
$data = SteamApp::querySteamData($appid, $language);
//Save hit
HitsModel::addHit(HitsModel::HITTYPE_MODULE_APP);
return json(array('code' => 200, 'appid' => $appid, 'lang' => $language, 'data' => $data));
@ -50,7 +49,6 @@ class ApiController extends BaseController {
$data = SteamServer::querySteamData(env('STEAM_API_KEY'), $addr);
//Save hit
HitsModel::addHit(HitsModel::HITTYPE_MODULE_SERVER);
return json(array('code' => 200, 'addr' => $addr, 'data' => $data));
@ -72,7 +70,6 @@ class ApiController extends BaseController {
$data = SteamUser::querySteamData(env('STEAM_API_KEY'), $steamid);
//Save hit
HitsModel::addHit(HitsModel::HITTYPE_MODULE_USER);
return json(array('code' => 200, 'steamid' => $steamid, 'data' => $data));
@ -94,7 +91,6 @@ class ApiController extends BaseController {
$data = SteamWorkshop::querySteamData($itemid);
//Save hit
HitsModel::addHit(HitsModel::HITTYPE_MODULE_WORKSHOP);
return json(array('code' => 200, 'itemid' => $itemid, 'data' => $data));
@ -116,7 +112,6 @@ class ApiController extends BaseController {
$data = SteamGroup::querySteamData($group);
//Save hit
HitsModel::addHit(HitsModel::HITTYPE_MODULE_GROUP);
return json(array('code' => 200, 'group' => $group, 'data' => $data));

View File

@ -80,6 +80,7 @@ class StatsController extends BaseController
$data[HitsModel::HITTYPE_MODULE_SERVER] = [];
$data[HitsModel::HITTYPE_MODULE_USER] = [];
$data[HitsModel::HITTYPE_MODULE_WORKSHOP] = [];
$data[HitsModel::HITTYPE_MODULE_GROUP] = [];
$hits = HitsModel::getHitsPerDay($start, $end);
@ -90,6 +91,7 @@ class StatsController extends BaseController
$count_total[HitsModel::HITTYPE_MODULE_SERVER] = 0;
$count_total[HitsModel::HITTYPE_MODULE_USER] = 0;
$count_total[HitsModel::HITTYPE_MODULE_WORKSHOP] = 0;
$count_total[HitsModel::HITTYPE_MODULE_GROUP] = 0;
for ($i = 0; $i < $hits->count(); $i++) {
$count_total[$hits->get($i)->get('hittype')] += $hits->get($i)->get('count');
@ -101,7 +103,7 @@ class StatsController extends BaseController
'code' => 200,
'data' => $data,
'counts' => $count_total,
'count_total' => $count_total[HitsModel::HITTYPE_MODULE_APP] + $count_total[HitsModel::HITTYPE_MODULE_SERVER] + $count_total[HitsModel::HITTYPE_MODULE_USER] + $count_total[HitsModel::HITTYPE_MODULE_WORKSHOP],
'count_total' => $count_total[HitsModel::HITTYPE_MODULE_APP] + $count_total[HitsModel::HITTYPE_MODULE_SERVER] + $count_total[HitsModel::HITTYPE_MODULE_USER] + $count_total[HitsModel::HITTYPE_MODULE_WORKSHOP] + $count_total[HitsModel::HITTYPE_MODULE_GROUP],
'start' => $start,
'end' => $end,
'day_diff' => $dayDiff

View File

@ -68,6 +68,7 @@ window.vue = new Vue({
document.getElementById('count-server').innerHTML = response.counts.mod_server;
document.getElementById('count-user').innerHTML = response.counts.mod_user;
document.getElementById('count-workshop').innerHTML = response.counts.mod_workshop;
document.getElementById('count-group').innerHTML = response.counts.mod_group;
let content = document.getElementById(elem);
if (content) {
@ -76,6 +77,7 @@ window.vue = new Vue({
let data_server = [];
let data_user = [];
let data_workshop = [];
let data_group = [];
let day = 60 * 60 * 24 * 1000;
let dt = new Date(Date.parse(start));
@ -98,6 +100,7 @@ window.vue = new Vue({
data_server.push(0);
data_user.push(0);
data_workshop.push(0);
data_group.push(0);
}
for (const [key, value] of Object.entries(response.data.mod_app)) {
@ -132,6 +135,14 @@ window.vue = new Vue({
});
}
for (const [key, value] of Object.entries(response.data.mod_group)) {
labels.forEach(function(lblElem, lblIndex){
if (lblElem == key) {
data_group[lblIndex] = parseInt(value[0]);
}
});
}
const config = {
type: 'line',
data: {
@ -160,6 +171,12 @@ window.vue = new Vue({
backgroundColor: 'rgb(24, 125, 54)',
borderColor: 'rgb(24, 125, 54)',
data: data_workshop,
},
{
label: 'Group',
backgroundColor: 'rgb(223, 90, 85)',
borderColor: 'rgb(223, 90, 85)',
data: data_group,
}
]
},

View File

@ -16,7 +16,7 @@ const STEAMWIDGETS_GROUP_VERSION = 'v1';
*/
class SteamGroupElem extends HTMLElement
{
HEADLINE_MAX_LEN = 30;
HEADLINE_MAX_LEN = 32;
DESCRIPTION_MAX_LEN = 40;
storedData = {};

View File

@ -18,6 +18,7 @@
<div>Server count: <div class="is-inline-block" id="count-server"></div></div>
<div>User count: <div class="is-inline-block" id="count-user"></div></div>
<div>Workshop count: <div class="is-inline-block" id="count-workshop"></div></div>
<div>Group count: <div class="is-inline-block" id="count-group"></div></div>
</div>
<div>

File diff suppressed because one or more lines are too long

View File

@ -16,7 +16,7 @@ const STEAMWIDGETS_GROUP_VERSION = 'v1';
*/
class SteamGroupElem extends HTMLElement
{
HEADLINE_MAX_LEN = 30;
HEADLINE_MAX_LEN = 32;
DESCRIPTION_MAX_LEN = 40;
storedData = {};