blob: 5768fe147492232da858fd9ad1c7a9016e476375 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<?php
use Digitigrade\HttpResponseStatus\NotFound;
use Digitigrade\HttpResponseStatus\PolicyRejected;
use Digitigrade\Model\Instance;
use Digitigrade\Model\Interaction;
use Digitigrade\PolicyManager;
use Digitigrade\Router;
Router::getInstance()->mount('/interaction/:id', function (array $args) {
$interaction = Interaction::find($args['id']);
$instance = Instance::findByRequestHeaders();
if ($interaction == null || $interaction->deleted) {
throw new NotFound("i don't know that interaction");
}
if (!$interaction->author->isLocal) {
throw new NotFound("i don't want to tell you about non-local interactions!");
}
PolicyManager::getInstance()->checkFederationOrThrow($interaction, $instance);
json_response($interaction);
});
|