diff --git a/src/Application/Organization/Logo/Command/DeleteOrganizationLogoCommand.php b/src/Application/Organization/Logo/Command/DeleteOrganizationLogoCommand.php
new file mode 100644
index 000000000..01489b097
--- /dev/null
+++ b/src/Application/Organization/Logo/Command/DeleteOrganizationLogoCommand.php
@@ -0,0 +1,16 @@
+organization;
+ $logo = $organization->getLogo();
+
+ if (!$logo) {
+ return;
+ }
+
+ $this->storage->delete($logo);
+ $organization->setLogo(null);
+ }
+}
diff --git a/src/Domain/User/Organization.php b/src/Domain/User/Organization.php
index 002e0866d..c254394fd 100644
--- a/src/Domain/User/Organization.php
+++ b/src/Domain/User/Organization.php
@@ -44,7 +44,7 @@ public function setSiret(string $siret): self
return $this;
}
- public function setLogo(string $logo): self
+ public function setLogo(?string $logo): self
{
$this->logo = $logo;
diff --git a/src/Infrastructure/Controller/MyArea/Organization/DeleteOrganizationLogoController.php b/src/Infrastructure/Controller/MyArea/Organization/DeleteOrganizationLogoController.php
new file mode 100644
index 000000000..5202accf9
--- /dev/null
+++ b/src/Infrastructure/Controller/MyArea/Organization/DeleteOrganizationLogoController.php
@@ -0,0 +1,53 @@
+ Requirement::UUID],
+ methods: ['DELETE'],
+ )]
+ #[IsCsrfTokenValid('delete-logo')]
+ public function __invoke(string $uuid): RedirectResponse
+ {
+ $organization = $this->getOrganization($uuid);
+
+ if (!$this->security->isGranted(OrganizationVoter::EDIT, $organization)) {
+ throw new AccessDeniedHttpException();
+ }
+
+ $this->commandBus->handle(new DeleteOrganizationLogoCommand($organization));
+
+ return new RedirectResponse(
+ url: $this->router->generate('app_config_organization_edit_logo', ['uuid' => $uuid]),
+ status: Response::HTTP_SEE_OTHER,
+ );
+ }
+}
diff --git a/templates/my_area/organization/logo.html.twig b/templates/my_area/organization/logo.html.twig
index 3ebea6bbc..691532ce3 100644
--- a/templates/my_area/organization/logo.html.twig
+++ b/templates/my_area/organization/logo.html.twig
@@ -1,5 +1,8 @@
{% extends 'layouts/layout.html.twig' %}
+
{% set metaTitle = 'organization.logo'|trans %}
+{% set deleteCsrfToken = csrf_token('delete-logo') %}
+
{% block title %}
{{ metaTitle }} - {{ parent() }}
{% endblock %}
@@ -33,6 +36,14 @@
file_button_icon: 'fr-icon-upload-fill',
}) }}
{{ form_end(form) }}
+ {% if logo %}
+
+ {% endif %}