Move mod/hostxrd to src/Module/Hostxrd

This commit is contained in:
Philipp Holzer 2019-04-30 22:22:36 +02:00
parent a4c2de7a0b
commit 3cd438c4e3
No known key found for this signature in database
GPG key ID: 517BE60E2CE5C8A5
3 changed files with 54 additions and 35 deletions

View file

@ -3,6 +3,7 @@
use Friendica\App;
use Friendica\Core\Config;
use Friendica\Core\System;
use Friendica\Module\Hostxrd;
use Friendica\Module\Nodeinfo;
require_once 'mod/hostxrd.php';
@ -13,7 +14,7 @@ function _well_known_init(App $a)
if ($a->argc > 1) {
switch ($a->argv[1]) {
case "host-meta":
hostxrd_init($a);
Hostxrd::printHostMeta();
break;
case "x-social-relay":
wk_social_relay();

View file

@ -1,34 +0,0 @@
<?php
/**
* @file mod/hostxrd.php
*/
use Friendica\App;
use Friendica\Core\Config;
use Friendica\Core\Renderer;
use Friendica\Core\System;
use Friendica\Protocol\Salmon;
use Friendica\Util\Crypto;
function hostxrd_init(App $a)
{
header('Access-Control-Allow-Origin: *');
header("Content-type: text/xml");
$pubkey = Config::get('system', 'site_pubkey');
if (! $pubkey) {
$res = Crypto::newKeypair(1024);
Config::set('system','site_prvkey', $res['prvkey']);
Config::set('system','site_pubkey', $res['pubkey']);
}
$tpl = Renderer::getMarkupTemplate('xrd_host.tpl');
echo Renderer::replaceMacros($tpl, [
'$zhost' => $a->getHostName(),
'$zroot' => System::baseUrl(),
'$domain' => System::baseUrl(),
'$bigkey' => Salmon::salmonKey(Config::get('system', 'site_pubkey'))]
);
exit();
}

52
src/Module/Hostxrd.php Normal file
View file

@ -0,0 +1,52 @@
<?php
namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Renderer;
use Friendica\Protocol\Salmon;
use Friendica\Util\Crypto;
/**
* Prints the host-meta text
*/
class Hostxrd extends BaseModule
{
public static function rawContent()
{
parent::rawContent();
self::printHostMeta();
}
/**
* Prints the host-meta output of this node
*
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function printHostMeta()
{
$app = self::getApp();
$config = $app->getConfig();
header("Content-type: text/xml");
$pubkey = $config->get('system', 'site_pubkey');
if (!$pubkey) {
$res = Crypto::newKeypair(1024);
$config->set('system','site_prvkey', $res['prvkey']);
$config->set('system','site_pubkey', $res['pubkey']);
}
$tpl = Renderer::getMarkupTemplate('xrd_host.tpl');
echo Renderer::replaceMacros($tpl, [
'$zhost' => $app->getHostName(),
'$zroot' => $app->getBaseURL(),
'$domain' => $app->getBaseURL(),
'$bigkey' => Salmon::salmonKey($config->get('system', 'site_pubkey'))]
);
exit();
}
}