]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/NodeInfo210.php
Option to automatically add links as attachment via API
[friendica.git] / src / Module / NodeInfo210.php
index a354046254d5394127a411135a3d5bc1c3107de8..e7112846c6c9c86400a12f595f47fdee31ee2d13 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2021, the Friendica project
+ * @copyright Copyright (C) 2010-2023, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -23,10 +23,10 @@ namespace Friendica\Module;
 
 use Friendica\App;
 use Friendica\BaseModule;
+use Friendica\Capabilities\ICanCreateResponses;
 use Friendica\Core\Addon;
 use Friendica\Core\Config\Capability\IManageConfigValues;
 use Friendica\Core\L10n;
-use Friendica\Core\System;
 use Friendica\Model\Nodeinfo;
 use Friendica\Util\Profiler;
 use Psr\Log\LoggerInterface;
@@ -52,16 +52,15 @@ class NodeInfo210 extends BaseModule
                $nodeinfo = [
                        'version' => '1.0',
                        'server'  => [
-                               'baseUrl'  => $this->baseUrl->get(),
                                'name'     => $this->config->get('config', 'sitename'),
                                'software' => 'friendica',
-                               'version'  => FRIENDICA_VERSION . '-' . DB_UPDATE_VERSION,
+                               'version'  => App::VERSION . '-' . DB_UPDATE_VERSION,
                        ],
                        'organization'      => Nodeinfo::getOrganization($this->config),
                        'protocols'         => ['dfrn', 'activitypub'],
-                       'services'          => [],
+                       'services'          => Nodeinfo::getServices(),
                        'openRegistrations' => intval($this->config->get('config', 'register_policy')) !== Register::CLOSED,
-                       'usage'             => [],
+                       'usage'             => Nodeinfo::getUsage(true),
                ];
 
                if (!empty($this->config->get('system', 'diaspora_enabled'))) {
@@ -72,10 +71,6 @@ class NodeInfo210 extends BaseModule
                        $nodeinfo['protocols'][] = 'ostatus';
                }
 
-               $nodeinfo['usage'] = Nodeinfo::getUsage(true);
-
-               $nodeinfo['services'] = Nodeinfo::getServices();
-
                if (Addon::isEnabled('twitter')) {
                        $nodeinfo['services']['inbound'][] = 'twitter';
                }
@@ -88,6 +83,7 @@ class NodeInfo210 extends BaseModule
                        $nodeinfo['services']['inbound'][] = 'imap';
                }
 
-               System::jsonExit($nodeinfo, 'application/json; charset=utf-8', JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
+               $this->response->setType(ICanCreateResponses::TYPE_JSON, 'application/json; charset=utf-8');
+               $this->response->addContent(json_encode($nodeinfo, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES));
        }
 }