Skip to content

Commit

Permalink
[File] fixes resource delete
Browse files Browse the repository at this point in the history
  • Loading branch information
Elorfin committed Jan 20, 2025
1 parent e114fe0 commit bd71e58
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/main/core/Listener/Resource/Types/FileListener.php
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ public function download(AbstractResource $resource): ?string
/** @param File $resource */
public function delete(AbstractResource $resource, FileBag $fileBag, bool $softDelete = true): bool
{
if ($softDelete && $this->fileManager->exists($resource->getHashName())) {
if (!$softDelete && $this->fileManager->exists($resource->getHashName())) {
$pathName = $this->fileManager->getDirectory().DIRECTORY_SEPARATOR.$resource->getHashName();
$fileBag->add($resource->getHashName(), $pathName);
}
Expand Down
12 changes: 12 additions & 0 deletions src/plugin/image-player/Component/Resource/ImageResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

use Claroline\AppBundle\API\Serializer\SerializerInterface;
use Claroline\AppBundle\API\SerializerProvider;
use Claroline\AppBundle\API\Utils\FileBag;
use Claroline\AppBundle\Persistence\ObjectManager;
use Claroline\CoreBundle\Component\Resource\DownloadableResourceInterface;
use Claroline\CoreBundle\Component\Resource\FileAdapterInterface;
Expand Down Expand Up @@ -93,6 +94,17 @@ public function download(AbstractResource $resource): ?string
return $resource->getUrl();
}

/** @param Image $resource */
public function delete(AbstractResource $resource, FileBag $fileBag, bool $softDelete = true): bool
{
if (!$softDelete && $this->fileManager->exists($resource->getUrl())) {
$pathName = $this->fileManager->getDirectory().DIRECTORY_SEPARATOR.$resource->getUrl();
$fileBag->add($resource->getUrl(), $pathName);
}

return true;
}

public function supportsFile(File $file): int
{
if (str_starts_with($file->getMimeType(), 'image')) {
Expand Down
12 changes: 12 additions & 0 deletions src/plugin/pdf-player/Component/Resource/PdfResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

use Claroline\AppBundle\API\Serializer\SerializerInterface;
use Claroline\AppBundle\API\SerializerProvider;
use Claroline\AppBundle\API\Utils\FileBag;
use Claroline\AppBundle\Persistence\ObjectManager;
use Claroline\CoreBundle\Component\Resource\FileAdapterInterface;
use Claroline\CoreBundle\Component\Resource\ResourceComponent;
Expand Down Expand Up @@ -91,6 +92,17 @@ public function download(AbstractResource $resource): ?string
return $resource->getUrl();
}

/** @param Pdf $resource */
public function delete(AbstractResource $resource, FileBag $fileBag, bool $softDelete = true): bool
{
if (!$softDelete && $this->fileManager->exists($resource->getUrl())) {
$pathName = $this->fileManager->getDirectory().DIRECTORY_SEPARATOR.$resource->getUrl();
$fileBag->add($resource->getUrl(), $pathName);
}

return true;
}

public function supportsFile(File $file): int
{
if ('application/pdf' === $file->getMimeType()) {
Expand Down
12 changes: 12 additions & 0 deletions src/plugin/video-player/Component/Resource/VideoResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

use Claroline\AppBundle\API\Serializer\SerializerInterface;
use Claroline\AppBundle\API\SerializerProvider;
use Claroline\AppBundle\API\Utils\FileBag;
use Claroline\AppBundle\Persistence\ObjectManager;
use Claroline\CoreBundle\Component\Resource\DownloadableResourceInterface;
use Claroline\CoreBundle\Component\Resource\FileAdapterInterface;
Expand Down Expand Up @@ -89,6 +90,17 @@ public function download(AbstractResource $resource): ?string
return $resource->getUrl();
}

/** @param Video $resource */
public function delete(AbstractResource $resource, FileBag $fileBag, bool $softDelete = true): bool
{
if (!$softDelete && $this->fileManager->exists($resource->getUrl())) {
$pathName = $this->fileManager->getDirectory().DIRECTORY_SEPARATOR.$resource->getUrl();
$fileBag->add($resource->getUrl(), $pathName);
}

return true;
}

public function supportsFile(File $file): int
{
if (str_starts_with($file->getMimeType(), 'video')) {
Expand Down

0 comments on commit bd71e58

Please sign in to comment.