Adding (temporary) calls to AP in existing stuff

This commit is contained in:
Michael 2018-09-11 07:07:56 +00:00
parent 0a5476591d
commit 1afa6523bc
3 changed files with 24 additions and 1 deletions

View file

@ -17,6 +17,7 @@ use Friendica\Model\Group;
use Friendica\Model\Item; use Friendica\Model\Item;
use Friendica\Model\Profile; use Friendica\Model\Profile;
use Friendica\Protocol\DFRN; use Friendica\Protocol\DFRN;
use Friendica\Protocol\ActivityPub;
function display_init(App $a) function display_init(App $a)
{ {
@ -43,7 +44,7 @@ function display_init(App $a)
$item = null; $item = null;
$fields = ['id', 'parent', 'author-id', 'body', 'uid']; $fields = ['id', 'parent', 'author-id', 'body', 'uid', 'guid'];
// If there is only one parameter, then check if this parameter could be a guid // If there is only one parameter, then check if this parameter could be a guid
if ($a->argc == 2) { if ($a->argc == 2) {
@ -76,6 +77,14 @@ function display_init(App $a)
displayShowFeed($item["id"], false); displayShowFeed($item["id"], false);
} }
if (stristr(defaults($_SERVER, 'HTTP_ACCEPT', ''), 'application/activity+json')) {
$wall_item = Item::selectFirst(['id', 'uid'], ['guid' => $item['guid'], 'wall' => true]);
if ($wall_item['uid'] == 180) {
$data = ActivityPub::createActivityFromItem($wall_item['id']);
echo json_encode($data);
exit();
}
}
if ($item["id"] != $item["parent"]) { if ($item["id"] != $item["parent"]) {
$item = Item::selectFirstForUser(local_user(), $fields, ['id' => $item["parent"]]); $item = Item::selectFirstForUser(local_user(), $fields, ['id' => $item["parent"]]);
} }

View file

@ -20,6 +20,7 @@ use Friendica\Model\Profile;
use Friendica\Module\Login; use Friendica\Module\Login;
use Friendica\Protocol\DFRN; use Friendica\Protocol\DFRN;
use Friendica\Util\DateTimeFormat; use Friendica\Util\DateTimeFormat;
use Friendica\Protocol\ActivityPub;
function profile_init(App $a) function profile_init(App $a)
{ {
@ -49,6 +50,15 @@ function profile_init(App $a)
DFRN::autoRedir($a, $which); DFRN::autoRedir($a, $which);
} }
if (stristr(defaults($_SERVER, 'HTTP_ACCEPT', ''), 'application/activity+json')) {
$user = DBA::selectFirst('user', ['uid'], ['nickname' => $which]);
if ($user['uid'] == 180) {
$data = ActivityPub::profile($user['uid']);
echo json_encode($data);
exit();
}
}
Profile::load($a, $which, $profile); Profile::load($a, $which, $profile);
$blocked = !local_user() && !remote_user() && Config::get('system', 'block_public'); $blocked = !local_user() && !remote_user() && Config::get('system', 'block_public');

View file

@ -92,6 +92,10 @@ function xrd_json($a, $uri, $alias, $profile_url, $r)
['rel' => 'http://purl.org/openwebauth/v1', 'type' => 'application/x-dfrn+json', 'href' => System::baseUrl().'/owa'] ['rel' => 'http://purl.org/openwebauth/v1', 'type' => 'application/x-dfrn+json', 'href' => System::baseUrl().'/owa']
] ]
]; ];
if ($r['uid'] == 180) {
$json['links'][] = ['rel' => 'self', 'type' => 'application/activity+json', 'href' => $profile_url];
}
echo json_encode($json); echo json_encode($json);
killme(); killme();
} }