This commit is contained in:
Julien Fastré 2022-02-11 17:14:14 +01:00
parent e595500cb8
commit e7d0c1cac6
2 changed files with 12 additions and 14 deletions

View File

@ -17,7 +17,6 @@ use Twig\TwigFunction;
class WopiEditTwigExtension extends AbstractExtension
{
public function getFilters(): array
{
return [
@ -34,5 +33,4 @@ class WopiEditTwigExtension extends AbstractExtension
new TwigFunction('chill_document_is_editable', [WopiEditTwigExtensionRuntime::class, 'isEditable']),
];
}
}

View File

@ -15,10 +15,10 @@ use ChampsLibres\WopiLib\Contract\Service\Discovery\DiscoveryInterface;
use Chill\DocStoreBundle\Entity\StoredObject;
use Twig\Environment;
use Twig\Extension\RuntimeExtensionInterface;
use function array_key_exists;
class WopiEditTwigExtensionRuntime implements RuntimeExtensionInterface
{
public const TEMPLATE = '@ChillDocStore/Button/wopi_edit_document.html.twig';
private DiscoveryInterface $discovery;
@ -28,14 +28,6 @@ class WopiEditTwigExtensionRuntime implements RuntimeExtensionInterface
$this->discovery = $discovery;
}
public function renderEditButton(Environment $environment, StoredObject $document, ?Array $options = null): string
{
return $environment->render(self::TEMPLATE, [
'document' => $document,
'options' => $options
]);
}
public function isEditable(StoredObject $document): bool
{
$mime_type = $this->discovery->discoverMimeType($document->getType());
@ -45,11 +37,19 @@ class WopiEditTwigExtensionRuntime implements RuntimeExtensionInterface
}
foreach ($mime_type as $item) {
if (array_key_exists('default', $item) && $item['default'] === 'true') {
if (array_key_exists('default', $item) && 'true' === $item['default']) {
return true;
}
}
return false;
}
public function renderEditButton(Environment $environment, StoredObject $document, ?array $options = null): string
{
return $environment->render(self::TEMPLATE, [
'document' => $document,
'options' => $options,
]);
}
}