]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Nodeinfo.php
Fix birthday display and setting
[friendica.git] / src / Model / Nodeinfo.php
index 58a9e45447a0d4a79be8c9167576cbbb36e85da9..7cde259538c95b26ced1c3f0ffe3b8bc832305bc 100644 (file)
@@ -18,9 +18,8 @@ class Nodeinfo
         */
        public static function update()
        {
-               $app = DI::app();
                $config = DI::config();
-               $logger = $app->getLogger();
+               $logger = DI::logger();
 
                // If the addon 'statistics_json' is enabled then disable it and activate nodeinfo.
                if (Addon::isEnabled('statistics_json')) {
@@ -53,12 +52,15 @@ class Nodeinfo
 
                $logger->debug('user statistics', $userStats);
 
-               $local_posts = DBA::count('thread', ["`wall` AND NOT `deleted` AND `uid` != 0"]);
-               $config->set('nodeinfo', 'local_posts', $local_posts);
-               $logger->debug('thread statistics', ['local_posts' => $local_posts]);
-
-               $local_comments = DBA::count('item', ["`origin` AND `id` != `parent` AND NOT `deleted` AND `uid` != 0"]);
-               $config->set('nodeinfo', 'local_comments', $local_comments);
-               $logger->debug('item statistics', ['local_comments' => $local_comments]);
+               $items = DBA::p("SELECT COUNT(*) AS `total`, `gravity` FROM `item` WHERE `origin` AND NOT `deleted` AND `uid` != 0 AND `gravity` IN (?, ?) GROUP BY `gravity`",
+                       GRAVITY_PARENT, GRAVITY_COMMENT);
+               while ($item = DBA::fetch($items)) {
+                       if ($item['gravity'] == GRAVITY_PARENT) {
+                               $config->set('nodeinfo', 'local_posts', $item['total']);
+                       } elseif ($item['gravity'] == GRAVITY_COMMENT) {
+                               $config->set('nodeinfo', 'local_comments', $item['total']);
+                       }
+               }
+               DBA::close($items);
        }
 }