X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FXrd.php;h=249c143ffbd7168fd2ee901e8c67e66b4d9aba90;hb=0c73531da1d93f218a47c798ae5db1d00144a7be;hp=5e108c3b53bbd3ead765995e3ab6c5afcf2297e0;hpb=f8c0f24e34e124ab782d5dcf3d2d658d70e19e5c;p=friendica.git diff --git a/src/Module/Xrd.php b/src/Module/Xrd.php index 5e108c3b53..249c143ffb 100644 --- a/src/Module/Xrd.php +++ b/src/Module/Xrd.php @@ -1,14 +1,34 @@ . + * + */ namespace Friendica\Module; use Friendica\BaseModule; use Friendica\Core\Hook; -use Friendica\Database\DBA; use Friendica\Core\Renderer; -use Friendica\Core\System; -use Friendica\Model\User; +use Friendica\Database\DBA; +use Friendica\DI; use Friendica\Model\Photo; +use Friendica\Model\User; +use Friendica\Protocol\ActivityNamespace; use Friendica\Protocol\Salmon; use Friendica\Util\Strings; @@ -17,9 +37,9 @@ use Friendica\Util\Strings; */ class Xrd extends BaseModule { - public static function rawContent() + public static function rawContent(array $parameters = []) { - $app = self::getApp(); + $app = DI::app(); // @TODO: Replace with parameter from router if ($app->argv[0] == 'xrd') { @@ -65,6 +85,11 @@ class Xrd extends BaseModule $owner = User::getOwnerDataById($user['uid']); + if (empty($owner)) { + DI::logger()->warning('No owner data for user id', ['uri' => $uri, 'name' => $name, 'user' => $user]); + throw new \Friendica\Network\HTTPException\NotFoundException(); + } + $alias = str_replace('/profile/', '/~', $owner['url']); $avatar = Photo::selectFirst(['type'], ['uid' => $owner['uid'], 'profile' => true]); @@ -74,9 +99,9 @@ class Xrd extends BaseModule } if ($mode == 'xml') { - self::printXML($alias, $app->getBaseURL(), $user, $owner, $avatar); + self::printXML($alias, DI::baseUrl()->get(), $user, $owner, $avatar); } else { - self::printJSON($alias, $app->getBaseURL(), $owner, $avatar); + self::printJSON($alias, DI::baseUrl()->get(), $owner, $avatar); } } @@ -95,11 +120,11 @@ class Xrd extends BaseModule ], 'links' => [ [ - 'rel' => NAMESPACE_DFRN, + 'rel' => ActivityNamespace::DFRN , 'href' => $owner['url'], ], [ - 'rel' => NAMESPACE_FEED, + 'rel' => ActivityNamespace::FEED, 'type' => 'application/atom+xml', 'href' => $owner['poll'], ], @@ -119,7 +144,7 @@ class Xrd extends BaseModule 'href' => $baseURL . '/hcard/' . $owner['nickname'], ], [ - 'rel' => NAMESPACE_POCO, + 'rel' => ActivityNamespace::POCO, 'href' => $owner['poco'], ], [