Merge branch 'master' into upgrade-php82

This commit is contained in:
2023-03-20 12:40:58 +01:00
18 changed files with 133 additions and 70 deletions

View File

@@ -18,6 +18,7 @@ use Chill\MainBundle\Entity\User;
use Psr\Log\LoggerInterface;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
use Symfony\Component\Mime\Part\DataPart;
@@ -40,6 +41,8 @@ class Convert
private LoggerInterface $logger;
private RequestStack $requestStack;
private Security $security;
private StoredObjectManagerInterface $storedObjectManager;
@@ -49,12 +52,14 @@ class Convert
*/
public function __construct(
HttpClientInterface $httpClient,
RequestStack $requestStack,
Security $security,
StoredObjectManagerInterface $storedObjectManager,
LoggerInterface $logger,
ParameterBagInterface $parameters
) {
$this->httpClient = $httpClient;
$this->requestStack = $requestStack;
$this->security = $security;
$this->storedObjectManager = $storedObjectManager;
$this->logger = $logger;
@@ -68,18 +73,23 @@ class Convert
}
$content = $this->storedObjectManager->read($storedObject);
$url = sprintf('%s/cool/convert-to/pdf', $this->collaboraDomain);
$form = new FormDataPart([
'data' => new DataPart($content, $storedObject->getUuid()->toString(), $storedObject->getType()),
]);
$response = $this->httpClient->request('POST', $url, [
'headers' => $form->getPreparedHeaders()->toArray(),
'body' => $form->bodyToString(),
'timeout' => 10,
]);
$query = [];
if (null !== $request = $this->requestStack->getCurrentRequest()) {
$query['lang'] = $request->getLocale();
}
try {
$url = sprintf('%s/cool/convert-to/pdf', $this->collaboraDomain);
$form = new FormDataPart([
'data' => new DataPart($content, $storedObject->getUuid()->toString(), $storedObject->getType()),
]);
$response = $this->httpClient->request('POST', $url, [
'headers' => $form->getPreparedHeaders()->toArray(),
'query' => $query,
'body' => $form->bodyToString(),
'timeout' => 10,
]);
return new Response($response->getContent(), Response::HTTP_OK, [
'Content-Type' => 'application/pdf',
]);