Show detailled statistics per platform

This commit is contained in:
Michael 2022-02-07 06:11:37 +00:00
parent 58b4ecd6ae
commit bdba75ec47
3 changed files with 57 additions and 7 deletions

View File

@ -74,8 +74,10 @@ class Federation extends BaseAdmin
$users = 0; $users = 0;
$month = 0; $month = 0;
$halfyear = 0; $halfyear = 0;
$posts = 0;
$gservers = DBA::p("SELECT COUNT(*) AS `total`, SUM(`registered-users`) AS `users`, $gservers = DBA::p("SELECT COUNT(*) AS `total`, SUM(`registered-users`) AS `users`,
SUM(IFNULL(`local-posts`, 0) + IFNULL(`local-comments`, 0)) AS `posts`,
SUM(IFNULL(`active-month-users`, `active-week-users`)) AS `month`, SUM(IFNULL(`active-month-users`, `active-week-users`)) AS `month`,
SUM(IFNULL(`active-halfyear-users`, `active-week-users`)) AS `halfyear`, `platform`, SUM(IFNULL(`active-halfyear-users`, `active-week-users`)) AS `halfyear`, `platform`,
ANY_VALUE(`network`) AS `network`, MAX(`version`) AS `version` ANY_VALUE(`network`) AS `network`, MAX(`version`) AS `version`
@ -85,6 +87,7 @@ class Federation extends BaseAdmin
$users += $gserver['users']; $users += $gserver['users'];
$month += $gserver['month']; $month += $gserver['month'];
$halfyear += $gserver['halfyear']; $halfyear += $gserver['halfyear'];
$posts += $gserver['posts'];
$versionCounts = []; $versionCounts = [];
$versions = DBA::p("SELECT COUNT(*) AS `total`, `version` FROM `gserver` $versions = DBA::p("SELECT COUNT(*) AS `total`, `version` FROM `gserver`
@ -139,6 +142,7 @@ class Federation extends BaseAdmin
$gserver['users'] += $counts[$platform][0]['users'] ?? 0; $gserver['users'] += $counts[$platform][0]['users'] ?? 0;
$gserver['month'] += $counts[$platform][0]['month'] ?? 0; $gserver['month'] += $counts[$platform][0]['month'] ?? 0;
$gserver['halfyear'] += $counts[$platform][0]['halfyear'] ?? 0; $gserver['halfyear'] += $counts[$platform][0]['halfyear'] ?? 0;
$gserver['posts'] += $counts[$platform][0]['posts'] ?? 0;
} }
if ($platform == 'friendica') { if ($platform == 'friendica') {
@ -159,7 +163,17 @@ class Federation extends BaseAdmin
ksort($versionCounts); ksort($versionCounts);
} }
$gserver['platform'] = $systems[$platform]['name']; $gserver['platform'] = $systems[$platform]['name'];
$gserver['monthlbl'] = DI::l10n()->t('%d active users last month', $gserver['month']);
$gserver['halfyearlbl'] = DI::l10n()->t('%d active users last six month', $gserver['halfyear']);
$gserver['userslbl'] = DI::l10n()->t('%d registered users', $gserver['users']);
$gserver['postslbl'] = DI::l10n()->t('%d local posts', $gserver['posts']);
if (($gserver['users'] > 0) && ($gserver['posts'] > 0)) {
$gserver['postsuserlbl'] = DI::l10n()->t('%d posts per user', $gserver['posts'] / $gserver['users']);
} else {
$gserver['postsuserlbl'] = '';
}
$counts[$platform] = [$gserver, $versionCounts, str_replace([' ', '%', '.'], '', $platform), $systems[$platform]['color']]; $counts[$platform] = [$gserver, $versionCounts, str_replace([' ', '%', '.'], '', $platform), $systems[$platform]['color']];
} }

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 2022.05-dev\n" "Project-Id-Version: 2022.05-dev\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 05:22+0000\n" "POT-Creation-Date: 2022-02-07 06:11+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -4699,7 +4699,7 @@ msgstr ""
#: src/Module/Admin/Blocklist/Contact.php:94 #: src/Module/Admin/Blocklist/Contact.php:94
#: src/Module/Admin/Blocklist/Server/Add.php:89 #: src/Module/Admin/Blocklist/Server/Add.php:89
#: src/Module/Admin/Blocklist/Server/Index.php:78 #: src/Module/Admin/Blocklist/Server/Index.php:78
#: src/Module/Admin/Federation.php:174 src/Module/Admin/Item/Delete.php:64 #: src/Module/Admin/Federation.php:188 src/Module/Admin/Item/Delete.php:64
#: src/Module/Admin/Logs/Settings.php:79 src/Module/Admin/Logs/View.php:83 #: src/Module/Admin/Logs/Settings.php:79 src/Module/Admin/Logs/View.php:83
#: src/Module/Admin/Queue.php:72 src/Module/Admin/Site.php:498 #: src/Module/Admin/Queue.php:72 src/Module/Admin/Site.php:498
#: src/Module/Admin/Storage.php:138 src/Module/Admin/Summary.php:232 #: src/Module/Admin/Storage.php:138 src/Module/Admin/Summary.php:232
@ -5113,22 +5113,47 @@ msgstr ""
msgid "Other" msgid "Other"
msgstr "" msgstr ""
#: src/Module/Admin/Federation.php:131 src/Module/Admin/Federation.php:363 #: src/Module/Admin/Federation.php:134 src/Module/Admin/Federation.php:377
msgid "unknown" msgid "unknown"
msgstr "" msgstr ""
#: src/Module/Admin/Federation.php:167
#, php-format
msgid "%d active users last month"
msgstr ""
#: src/Module/Admin/Federation.php:168
#, php-format
msgid "%d active users last six month"
msgstr ""
#: src/Module/Admin/Federation.php:169 #: src/Module/Admin/Federation.php:169
#, php-format
msgid "%d registered users"
msgstr ""
#: src/Module/Admin/Federation.php:170
#, php-format
msgid "%d local posts"
msgstr ""
#: src/Module/Admin/Federation.php:173
#, php-format
msgid "%d posts per user"
msgstr ""
#: src/Module/Admin/Federation.php:183
msgid "" msgid ""
"This page offers you some numbers to the known part of the federated social " "This page offers you some numbers to the known part of the federated social "
"network your Friendica node is part of. These numbers are not complete but " "network your Friendica node is part of. These numbers are not complete but "
"only reflect the part of the network your node is aware of." "only reflect the part of the network your node is aware of."
msgstr "" msgstr ""
#: src/Module/Admin/Federation.php:175 src/Module/BaseAdmin.php:87 #: src/Module/Admin/Federation.php:189 src/Module/BaseAdmin.php:87
msgid "Federation Statistics" msgid "Federation Statistics"
msgstr "" msgstr ""
#: src/Module/Admin/Federation.php:179 #: src/Module/Admin/Federation.php:193
#, php-format #, php-format
msgid "" msgid ""
"Currently this node is aware of %d nodes (%d active users last month, %d " "Currently this node is aware of %d nodes (%d active users last month, %d "

View File

@ -10,7 +10,7 @@
<ul> <ul>
{{foreach $counts as $c}} {{foreach $counts as $c}}
{{if $c[0]['total'] > 0}} {{if $c[0]['total'] > 0}}
<li>{{$c[0]['platform']}} ({{$c[0]['total']}} &bull; {{$c[0]['month']}} &bull; {{$c[0]['halfyear']}} &bull; {{$c[0]['users']}})</li> <li>{{$c[0]['platform']}} ({{$c[0]['total']}}/{{$c[0]['users']}})</li>
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
</ul> </ul>
@ -60,6 +60,17 @@
<th><strong>{{$c[0]['total']}}</strong></td> <th><strong>{{$c[0]['total']}}</strong></td>
<td>{{$c[0]['network']}}</td> <td>{{$c[0]['network']}}</td>
</tr> </tr>
<tr>
<td colspan="3" class="federation-summary">
<ul>
{{if $c[0]['month']}}<li>{{$c[0]['monthlbl']}}</li>{{/if}}
{{if $c[0]['halfyear']}}<li>{{$c[0]['halfyearlbl']}}</li>{{/if}}
{{if $c[0]['users']}}<li>{{$c[0]['userslbl']}}</li>{{/if}}
{{if $c[0]['posts']}}<li>{{$c[0]['postslbl']}}</li>{{/if}}
{{if $c[0]['postsuserlbl']}}<li>{{$c[0]['postsuserlbl']}}</li>{{/if}}
</ul>
</td>
</tr>
<tr> <tr>
<td colspan="3" class="federation-data"> <td colspan="3" class="federation-data">
<canvas id="{{$c[2]}}Chart" class="federation-network-graph" width="240" height="240"></canvas> <canvas id="{{$c[2]}}Chart" class="federation-network-graph" width="240" height="240"></canvas>