use Friendica\Module\Response;
use Friendica\Util\Arrays;
use Friendica\Util\DateTimeFormat;
-use Friendica\Util\HTTPInputData;
use Friendica\Util\XML;
use Psr\Log\LoggerInterface;
use Friendica\Factory\Api\Twitter\User as TwitterUser;
'alternate' => $user_info['url'],
'self' => $this->baseUrl . '/' . $this->args->getQueryString(),
'base' => $this->baseUrl,
- 'updated' => DateTimeFormat::utc(null, DateTimeFormat::API),
+ 'updated' => DateTimeFormat::utcNow(DateTimeFormat::API),
'atom_updated' => DateTimeFormat::utcNow(DateTimeFormat::ATOM),
'language' => $user_info['lang'],
'logo' => $this->baseUrl . '/images/friendica-32.png',
$this->addContent($return);
}
+ /**
+ * Wrapper around exit() for JSON only responses
+ *
+ * @param array $data
+ */
+ public function exitWithJson(array $data)
+ {
+ $this->exit('content', ['content' => $data], static::TYPE_JSON);
+ }
+
/**
* Quit execution with the message that the endpoint isn't implemented
*
* @param string $method
+ * @param array $request (optional) The request content of the current call for later analysis
*
* @return void
* @throws \Exception
*/
- public function unsupported(string $method = 'all')
+ public function unsupported(string $method = 'all', array $request = [])
{
$path = $this->args->getQueryString();
$this->logger->info('Unimplemented API call',
'method' => $method,
'path' => $path,
'agent' => $_SERVER['HTTP_USER_AGENT'] ?? '',
- 'request' => HTTPInputData::process()
+ 'request' => $request,
]);
$error = $this->l10n->t('API endpoint %s %s is not implemented', strtoupper($method), $path);
$error_description = $this->l10n->t('The API endpoint is currently not implemented but might be in the future.');