]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/NodeInfo.php
Merge pull request #7973 from tobiasd/2019.12-CHANGELOG
[friendica.git] / src / Module / NodeInfo.php
index 999b3fb8f29e34aa68ef9bdd68fc8baeed8dd23e..8e3692e3d37cfe1a9897f9ddb4a77ece1ef83714 100644 (file)
@@ -17,12 +17,7 @@ class NodeInfo extends BaseModule
        {
                $app = self::getApp();
 
-               // @TODO: Replace with parameter from router
-               // if the first argument is ".well-known", print the well-known text
-               if (($app->argc > 1) && ($app->argv[0] == '.well-known')) {
-                       self::printWellKnown($app);
-               // otherwise print the nodeinfo
-               } elseif ($parameters['version'] == '1.0') {
+               if ($parameters['version'] == '1.0') {
                        self::printNodeInfo1($app);
                } elseif ($parameters['version'] == '2.0') {
                        self::printNodeInfo2($app);
@@ -31,29 +26,6 @@ class NodeInfo extends BaseModule
                }
        }
 
-       /**
-        * Prints the well-known nodeinfo redirect
-        *
-        * @param App $app
-        *
-        * @throws \Friendica\Network\HTTPException\NotFoundException
-        */
-       private static function printWellKnown(App $app)
-       {
-               $nodeinfo = [
-                       'links' => [
-                               ['rel'  => 'http://nodeinfo.diaspora.software/ns/schema/1.0',
-                               'href' => $app->getBaseURL() . '/nodeinfo/1.0'],
-                               ['rel'  => 'http://nodeinfo.diaspora.software/ns/schema/2.0',
-                               'href' => $app->getBaseURL() . '/nodeinfo/2.0'],
-                       ]
-               ];
-
-               header('Content-type: application/json; charset=utf-8');
-               echo json_encode($nodeinfo, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
-               exit;
-       }
-
        /**
         * Return the supported services
         *
@@ -89,15 +61,11 @@ class NodeInfo extends BaseModule
        */
        private static function getServices(App $app)
        {
-               $config = $app->getConfig();
-
                $services = [
                        'inbound'  => [],
                        'outbound' => [],
                ];
 
-               $smtp = (function_exists('imap_open') && !$config->get('system', 'imap_disabled') && !$config->get('system', 'dfrn_only'));
-
                if (Addon::isEnabled('blogger')) {
                        $services['outbound'][] = 'blogger';
                }
@@ -130,9 +98,9 @@ class NodeInfo extends BaseModule
                        $services['inbound'][] = 'pumpio';
                        $services['outbound'][] = 'pumpio';
                }
-               if ($smtp) {
-                       $services['outbound'][] = 'smtp';
-               }
+
+               $services['outbound'][] = 'smtp';
+
                if (Addon::isEnabled('tumblr')) {
                        $services['outbound'][] = 'tumblr';
                }
@@ -158,7 +126,7 @@ class NodeInfo extends BaseModule
                $nodeinfo = [
                        'version'           => '1.0',
                        'software'          => [
-                               'name'    => 'friendica',
+                               'name'    => 'Friendica',
                                'version' => FRIENDICA_VERSION . '-' . DB_UPDATE_VERSION,
                        ],
                        'protocols'         => [
@@ -218,10 +186,12 @@ class NodeInfo extends BaseModule
        {
                $config = $app->getConfig();
 
+               $imap = (function_exists('imap_open') && !$config->get('system', 'imap_disabled') && !$config->get('system', 'dfrn_only'));
+
                $nodeinfo = [
                        'version'           => '2.0',
                        'software'          => [
-                               'name'    => 'friendica',
+                               'name'    => 'Friendica',
                                'version' => FRIENDICA_VERSION . '-' . DB_UPDATE_VERSION,
                        ],
                        'protocols'         => ['dfrn', 'activitypub'],
@@ -253,6 +223,10 @@ class NodeInfo extends BaseModule
                $nodeinfo['services']['inbound'][]  = 'rss2.0';
                $nodeinfo['services']['outbound'][] = 'atom1.0';
 
+               if ($imap) {
+                       $nodeinfo['services']['inbound'][] = 'imap';
+               }
+
                $nodeinfo['metadata']['explicitContent'] = $config->get('system', 'explicit_content', false) == true;
 
                header('Content-type: application/json; charset=utf-8');