public function get_outgoing_links(Request $request, Response $response) { if (!$this->_is_logged_in($request, $response)) { return $response; } $sourceURL = $request->get('url'); $client = new IndieWeb\MentionClient(); $source = $this->http->get($sourceURL); $parsed = \Mf2\parse($source['body'], $sourceURL); $links = array_values($client->findOutgoingLinks($parsed)); // Remove the source URL from the list if present $links = array_filter($links, function ($link) use($sourceURL) { return $link != $sourceURL; }); $response->headers->set('Content-Type', 'application/json'); $response->setContent(json_encode(['links' => $links])); return $response; }
public function get_outgoing_links(Request $request, Response $response) { if (!$this->_is_logged_in($request, $response)) { return $response; } $sourceURL = $request->get('url'); $client = new IndieWeb\MentionClient(); $source = $this->http->get($sourceURL); $parsed = \Mf2\parse($source['body'], $sourceURL); $links = $client->findOutgoingLinks($parsed); $response->headers->set('Content-Type', 'application/json'); $response->setContent(json_encode(['links' => array_values($links)])); return $response; }