refactor: simplify preview generation
Signed-off-by: Sebastian Krupinski <krupinski01@gmail.com>
This commit is contained in:
@@ -136,10 +136,10 @@ class TransferController extends ControllerAbstract
|
|||||||
], Response::HTTP_NOT_FOUND);
|
], Response::HTTP_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
$response = new StreamedResponse($preview->result->resource->stream());
|
$response = new StreamedResponse($preview->resource->stream());
|
||||||
$response->headers->set('Content-Type', $preview->result->resource->mimeType());
|
$response->headers->set('Content-Type', $preview->resource->mimeType());
|
||||||
$response->headers->set('Content-Length', (string) $preview->blob->size);
|
$response->headers->set('Content-Length', (string) $preview->size);
|
||||||
$response->headers->set('ETag', '"' . trim($preview->blob->etag, '"') . '"');
|
$response->headers->set('ETag', '"' . trim($preview->etag, '"') . '"');
|
||||||
$response->headers->set('Cache-Control', 'private, max-age=3600');
|
$response->headers->set('Cache-Control', 'private, max-age=3600');
|
||||||
$response->headers->set('X-Content-Type-Options', 'nosniff');
|
$response->headers->set('X-Content-Type-Options', 'nosniff');
|
||||||
return $response;
|
return $response;
|
||||||
|
|||||||
+2
-2
@@ -6,7 +6,7 @@ namespace KTXM\DocumentsManager;
|
|||||||
|
|
||||||
use InvalidArgumentException;
|
use InvalidArgumentException;
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
use KTXC\Preview\CachedPreview;
|
use KTXC\Preview\Preview;
|
||||||
use KTXC\Preview\PreviewManager;
|
use KTXC\Preview\PreviewManager;
|
||||||
use KTXC\Resource\ProviderManager;
|
use KTXC\Resource\ProviderManager;
|
||||||
use KTXF\Documents\Collection\CollectionBaseInterface;
|
use KTXF\Documents\Collection\CollectionBaseInterface;
|
||||||
@@ -1351,7 +1351,7 @@ class Manager {
|
|||||||
/**
|
/**
|
||||||
* Resolve an authorized entity and lazily generate or retrieve its preview.
|
* Resolve an authorized entity and lazily generate or retrieve its preview.
|
||||||
*/
|
*/
|
||||||
public function entityPreview(string $tenantId, string $userId, EntityIdentifier $target, string $variant = 'popover'): ?CachedPreview {
|
public function entityPreview(string $tenantId, string $userId, EntityIdentifier $target, string $variant = 'popover'): ?Preview {
|
||||||
$entities = $this->entityFetchBulk($tenantId, $userId, $target);
|
$entities = $this->entityFetchBulk($tenantId, $userId, $target);
|
||||||
$entity = $entities[$target->entity()] ?? reset($entities);
|
$entity = $entities[$target->entity()] ?? reset($entities);
|
||||||
if (!$entity instanceof EntityBaseInterface) {
|
if (!$entity instanceof EntityBaseInterface) {
|
||||||
|
|||||||
Reference in New Issue
Block a user