]> git.mxchange.org Git - friendica.git/blobdiff - mod/_well_known.php
Improve Console/Config display for array values
[friendica.git] / mod / _well_known.php
index 9c862af71f02edd77282270a0c58ae40508757ff..407fc756a931fef7cfe0a39adc79816def46b1b6 100644 (file)
@@ -1,31 +1,38 @@
 <?php
 
-use \Friendica\Core\Config;
+use Friendica\App;
+use Friendica\Core\Config;
+use Friendica\Core\System;
 
-require_once("mod/hostxrd.php");
-require_once("mod/nodeinfo.php");
+require_once 'mod/hostxrd.php';
+require_once 'mod/nodeinfo.php';
+require_once 'mod/xrd.php';
 
-function _well_known_init(App $a) {
+function _well_known_init(App $a)
+{
        if ($a->argc > 1) {
-               switch($a->argv[1]) {
+               switch ($a->argv[1]) {
                        case "host-meta":
                                hostxrd_init($a);
                                break;
                        case "x-social-relay":
-                               wk_social_relay($a);
+                               wk_social_relay();
                                break;
                        case "nodeinfo":
                                nodeinfo_wellknown($a);
                                break;
+                       case "webfinger":
+                               xrd_init($a);
+                               break;
                }
        }
-       http_status_exit(404);
+       System::httpExit(404);
        killme();
 }
 
-function wk_social_relay(App $a) {
-
-       $subscribe = (bool)Config::get('system', 'relay_subscribe', false);
+function wk_social_relay()
+{
+       $subscribe = (bool) Config::get('system', 'relay_subscribe', false);
 
        if ($subscribe) {
                $scope = Config::get('system', 'relay_scope', SR_SCOPE_ALL);
@@ -33,36 +40,44 @@ function wk_social_relay(App $a) {
                $scope = SR_SCOPE_NONE;
        }
 
-       $tags = array();
+       $tags = [];
 
        if ($scope == SR_SCOPE_TAGS) {
                $server_tags = Config::get('system', 'relay_server_tags');
                $tagitems = explode(",", $server_tags);
 
-               foreach($tagitems AS $tag) {
-                       $tags[trim($tag, "# ")] = trim($tag, "# ");
+               /// @todo Check if it was better to use "strtolower" on the tags
+               foreach ($tagitems AS $tag) {
+                       $tag = trim($tag, "# ");
+                       $tags[$tag] = $tag;
                }
 
                if (Config::get('system', 'relay_user_tags')) {
                        $terms = q("SELECT DISTINCT(`term`) FROM `search`");
 
-                       foreach($terms AS $term) {
+                       foreach ($terms AS $term) {
                                $tag = trim($term["term"], "#");
                                $tags[$tag] = $tag;
                        }
                }
        }
 
-       $taglist = array();
+       $taglist = [];
        foreach ($tags AS $tag) {
-               $taglist[] = $tag;
+               if (!empty($tag)) {
+                       $taglist[] = $tag;
+               }
        }
 
-       $relay = array("subscribe" => $subscribe,
-                       "scope" => $scope,
-                       "tags" => $taglist);
+       $relay = [
+               'subscribe' => $subscribe,
+               'scope' => $scope,
+               'tags' => $taglist,
+               'protocols' => ['diaspora' => ['receive' => System::baseUrl() . '/receive/public'],
+                       'dfrn' => ['receive' => System::baseUrl() . '/dfrn_notify']]
+       ];
 
        header('Content-type: application/json; charset=utf-8');
-       echo json_encode($relay, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
+       echo json_encode($relay, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
        exit;
 }