From eaa43fc9e21c7dff7affcecfb9f4a4ccc1b4c8d3 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 18:54:46 +0100 Subject: [PATCH 001/229] feat(tests): update dependencies add symfony/phpunit-bridge add phpunit/phpunit add symfony/flex --- composer.json | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 7632d39..ebdd577 100644 --- a/composer.json +++ b/composer.json @@ -60,11 +60,24 @@ "symfony/webpack-encore-bundle": "^1.11", "symfony/yaml": "5.4.*", "twig/extra-bundle": "^2.12|^3.3", - "twig/twig": "^2.12|^3.3" + "twig/twig": "^2.12|^3.3", + "symfony/phpunit-bridge": "^6.2", + "phpunit/phpunit": "^9.5" }, "autoload": { "psr-4": { "App\\Core\\": "src/core/" } + }, + "config": { + "allow-plugins": { + "symfony/flex": true + } + }, + "scripts": { + "auto-scripts": { + "cache:clear": "symfony-cmd", + "assets:install %PUBLIC_DIR%": "symfony-cmd" + } } } From 649d0b2de0921883883a9a39fcd411e7b781bffb Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 18:55:59 +0100 Subject: [PATCH 002/229] feat(composer): remove scripts --- composer.json | 6 ------ 1 file changed, 6 deletions(-) diff --git a/composer.json b/composer.json index ebdd577..c5e3ce2 100644 --- a/composer.json +++ b/composer.json @@ -73,11 +73,5 @@ "allow-plugins": { "symfony/flex": true } - }, - "scripts": { - "auto-scripts": { - "cache:clear": "symfony-cmd", - "assets:install %PUBLIC_DIR%": "symfony-cmd" - } } } From 55dded3ef4cf53d098d69012580ee17758f605b2 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 19:03:39 +0100 Subject: [PATCH 003/229] feat(dep): upgrade symfony/flex --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index c5e3ce2..3276767 100644 --- a/composer.json +++ b/composer.json @@ -37,7 +37,7 @@ "symfony/event-dispatcher": "5.4.*", "symfony/expression-language": "5.4.*", "symfony/finder": "5.4.*", - "symfony/flex": "^1.3.1", + "symfony/flex": "^2.2", "symfony/form": "5.4.*", "symfony/framework-bundle": "5.4.*", "symfony/http-client": "5.4.*", From e623e9fb467cab93d87c349bf98c2372c7952fdb Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 19:30:15 +0100 Subject: [PATCH 004/229] feat(dep): add symfony/runtime --- composer.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 7632d39..d8e70e1 100644 --- a/composer.json +++ b/composer.json @@ -60,7 +60,8 @@ "symfony/webpack-encore-bundle": "^1.11", "symfony/yaml": "5.4.*", "twig/extra-bundle": "^2.12|^3.3", - "twig/twig": "^2.12|^3.3" + "twig/twig": "^2.12|^3.3", + "symfony/runtime": "^6.0" }, "autoload": { "psr-4": { From 98c2d703678378cf892a7c27e96454f44afc0271 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 19:32:02 +0100 Subject: [PATCH 005/229] feat(dep): add symfony/flex --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index d8e70e1..27b920c 100644 --- a/composer.json +++ b/composer.json @@ -37,7 +37,7 @@ "symfony/event-dispatcher": "5.4.*", "symfony/expression-language": "5.4.*", "symfony/finder": "5.4.*", - "symfony/flex": "^1.3.1", + "symfony/flex": "^2.2", "symfony/form": "5.4.*", "symfony/framework-bundle": "5.4.*", "symfony/http-client": "5.4.*", From 8ebb54c9a9cd7451bfdaa4cffdd8d2e02aec46a9 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 19:40:00 +0100 Subject: [PATCH 006/229] feat(dep): change version of symfony/runtime --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 27b920c..9786468 100644 --- a/composer.json +++ b/composer.json @@ -61,7 +61,7 @@ "symfony/yaml": "5.4.*", "twig/extra-bundle": "^2.12|^3.3", "twig/twig": "^2.12|^3.3", - "symfony/runtime": "^6.0" + "symfony/runtime": "^6" }, "autoload": { "psr-4": { From 5626a2522ad294516326b810ee16043cc16ed80f Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 19:40:34 +0100 Subject: [PATCH 007/229] feat(dep): remove symfony/runtime --- composer.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 9786468..c44c093 100644 --- a/composer.json +++ b/composer.json @@ -60,8 +60,7 @@ "symfony/webpack-encore-bundle": "^1.11", "symfony/yaml": "5.4.*", "twig/extra-bundle": "^2.12|^3.3", - "twig/twig": "^2.12|^3.3", - "symfony/runtime": "^6" + "twig/twig": "^2.12|^3.3" }, "autoload": { "psr-4": { From 0a7550940d6fe26c97f43f4774928c7f99d842c2 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 19:59:54 +0100 Subject: [PATCH 008/229] feat(dep): add symfony/runtime 5.4 --- composer.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index c44c093..0c4114d 100644 --- a/composer.json +++ b/composer.json @@ -60,7 +60,8 @@ "symfony/webpack-encore-bundle": "^1.11", "symfony/yaml": "5.4.*", "twig/extra-bundle": "^2.12|^3.3", - "twig/twig": "^2.12|^3.3" + "twig/twig": "^2.12|^3.3", + "symfony/runtime": "^5.4" }, "autoload": { "psr-4": { From e402c49835f9299ee6789b869d74f9151d627789 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Sun, 8 Jan 2023 20:50:00 +0100 Subject: [PATCH 009/229] fix(admin): test site_logo before using it --- src/core/Resources/views/admin/module/metas.html.twig | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/Resources/views/admin/module/metas.html.twig b/src/core/Resources/views/admin/module/metas.html.twig index bcbdcf3..dfa4845 100644 --- a/src/core/Resources/views/admin/module/metas.html.twig +++ b/src/core/Resources/views/admin/module/metas.html.twig @@ -1,4 +1,6 @@ - - +{% if site_logo is defined %} + + +{% endif %} From 9e0eda43389c72a62e5e28decea9638f678514fa Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Mon, 9 Jan 2023 08:07:40 +0100 Subject: [PATCH 010/229] fix(crud): allow POST in delete actions --- src/core/Controller/FileManager/FileManagerAdminController.php | 2 +- src/core/Controller/Redirect/RedirectAdminController.php | 2 +- .../Controller/Setting/NavigationSettingAdminController.php | 2 +- src/core/Controller/Site/MenuAdminController.php | 2 +- src/core/Controller/Site/NavigationAdminController.php | 2 +- src/core/Controller/Site/NodeAdminController.php | 2 +- src/core/Controller/Site/PageAdminController.php | 2 +- src/core/Controller/User/UserAdminController.php | 2 +- src/core/Resources/maker/controller/CrudController.tpl.php | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/core/Controller/FileManager/FileManagerAdminController.php b/src/core/Controller/FileManager/FileManagerAdminController.php index a5f6ebb..8312997 100644 --- a/src/core/Controller/FileManager/FileManagerAdminController.php +++ b/src/core/Controller/FileManager/FileManagerAdminController.php @@ -390,7 +390,7 @@ class FileManagerAdminController extends AdminController ]); } - #[Route(path: '/delete', name: 'admin_file_manager_delete', methods: ['DELETE'])] + #[Route(path: '/delete', name: 'admin_file_manager_delete', methods: ['DELETE', 'POST'])] public function delete(FsFileManager $manager, Request $request): Response { $path = $request->request->get('file'); diff --git a/src/core/Controller/Redirect/RedirectAdminController.php b/src/core/Controller/Redirect/RedirectAdminController.php index dd773f8..8f0eef3 100644 --- a/src/core/Controller/Redirect/RedirectAdminController.php +++ b/src/core/Controller/Redirect/RedirectAdminController.php @@ -61,7 +61,7 @@ class RedirectAdminController extends CrudController return $this->doBatch($page, $query, $entityManager, $request, $session); } - #[Route(path: '/admin/redirect/delete/{entity}', name: 'admin_redirect_delete', methods: ['DELETE'])] + #[Route(path: '/admin/redirect/delete/{entity}', name: 'admin_redirect_delete', methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { return $this->doDelete($entity, $entityManager, $request); diff --git a/src/core/Controller/Setting/NavigationSettingAdminController.php b/src/core/Controller/Setting/NavigationSettingAdminController.php index 95874e4..ec2e141 100644 --- a/src/core/Controller/Setting/NavigationSettingAdminController.php +++ b/src/core/Controller/Setting/NavigationSettingAdminController.php @@ -54,7 +54,7 @@ class NavigationSettingAdminController extends AdminController ]); } - #[Route(path: '/delete/{entity}', name: 'admin_navigation_setting_delete', methods: ['DELETE'])] + #[Route(path: '/delete/{entity}', name: 'admin_navigation_setting_delete', methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { if ($this->isCsrfTokenValid('delete'.$entity->getId(), $request->request->get('_token'))) { diff --git a/src/core/Controller/Site/MenuAdminController.php b/src/core/Controller/Site/MenuAdminController.php index a8f122d..68ea9c6 100644 --- a/src/core/Controller/Site/MenuAdminController.php +++ b/src/core/Controller/Site/MenuAdminController.php @@ -53,7 +53,7 @@ class MenuAdminController extends AdminController ]); } - #[Route(path: '/delete/{entity}', name: 'admin_site_menu_delete', methods: ['DELETE'])] + #[Route(path: '/delete/{entity}', name: 'admin_site_menu_delete', methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { if ($this->isCsrfTokenValid('delete'.$entity->getId(), $request->request->get('_token'))) { diff --git a/src/core/Controller/Site/NavigationAdminController.php b/src/core/Controller/Site/NavigationAdminController.php index be49cb7..69ba2c5 100644 --- a/src/core/Controller/Site/NavigationAdminController.php +++ b/src/core/Controller/Site/NavigationAdminController.php @@ -72,7 +72,7 @@ class NavigationAdminController extends CrudController return $this->doSort($page, $query, $entityManager, $request, $session); } - #[Route(path: '/admin/site/navigation/delete/{entity}', name: 'admin_site_navigation_delete', methods: ['DELETE'])] + #[Route(path: '/admin/site/navigation/delete/{entity}', name: 'admin_site_navigation_delete', methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { return $this->doDelete($entity, $entityManager, $request); diff --git a/src/core/Controller/Site/NodeAdminController.php b/src/core/Controller/Site/NodeAdminController.php index e3fb30e..7f47a47 100644 --- a/src/core/Controller/Site/NodeAdminController.php +++ b/src/core/Controller/Site/NodeAdminController.php @@ -239,7 +239,7 @@ class NodeAdminController extends AbstractController ]).sprintf('#node-%d', $entity->getId())); } - #[Route(path: '/delete/{entity}', name: 'admin_site_node_delete', methods: ['DELETE'])] + #[Route(path: '/delete/{entity}', name: 'admin_site_node_delete', methods: ['DELETE', 'POST'])] public function delete( Entity $entity, NodeRepository $nodeRepository, diff --git a/src/core/Controller/Site/PageAdminController.php b/src/core/Controller/Site/PageAdminController.php index b7b57b3..c6bcadb 100644 --- a/src/core/Controller/Site/PageAdminController.php +++ b/src/core/Controller/Site/PageAdminController.php @@ -61,7 +61,7 @@ class PageAdminController extends CrudController return $this->doEdit($entity, $entityManager, $request); } - #[Route(path: '/admin/site/page/delete/{entity}', name: 'admin_site_page_delete', methods: ['DELETE'])] + #[Route(path: '/admin/site/page/delete/{entity}', name: 'admin_site_page_delete', methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { return $this->doDelete($entity, $entityManager, $request); diff --git a/src/core/Controller/User/UserAdminController.php b/src/core/Controller/User/UserAdminController.php index e8e5aa5..1e9f28c 100644 --- a/src/core/Controller/User/UserAdminController.php +++ b/src/core/Controller/User/UserAdminController.php @@ -50,7 +50,7 @@ class UserAdminController extends CrudController return $this->doEdit($entity, $entityManager, $request); } - #[Route(path: '/admin/user/delete/{entity}', name: 'admin_user_delete', methods: ['DELETE'])] + #[Route(path: '/admin/user/delete/{entity}', name: 'admin_user_delete', methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { return $this->doDelete($entity, $entityManager, $request); diff --git a/src/core/Resources/maker/controller/CrudController.tpl.php b/src/core/Resources/maker/controller/CrudController.tpl.php index 2c8d2b1..d92cee0 100644 --- a/src/core/Resources/maker/controller/CrudController.tpl.php +++ b/src/core/Resources/maker/controller/CrudController.tpl.php @@ -62,7 +62,7 @@ class extends CrudController return $this->doBatch($page, $query, $entityManager, $request, $session); } - #[Route(path: "/admin//delete/{entity}", name: "admin__delete", methods: ['DELETE'])] + #[Route(path: "/admin//delete/{entity}", name: "admin__delete", methods: ['DELETE', 'POST'])] public function delete(Entity $entity, EntityManager $entityManager, Request $request): Response { return $this->doDelete($entity, $entityManager, $request); From 3127018a73e36b74d53461259b99e760e6446c5a Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Mon, 9 Jan 2023 08:10:34 +0100 Subject: [PATCH 011/229] fix(crud): remove default page value in abstract crud controller --- src/core/Controller/Admin/Crud/CrudController.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/core/Controller/Admin/Crud/CrudController.php b/src/core/Controller/Admin/Crud/CrudController.php index 57f6688..825de13 100644 --- a/src/core/Controller/Admin/Crud/CrudController.php +++ b/src/core/Controller/Admin/Crud/CrudController.php @@ -26,7 +26,7 @@ abstract class CrudController extends AdminController abstract protected function getConfiguration(): CrudConfiguration; - protected function doIndex(int $page = 1, RepositoryQuery $query, Request $request, Session $session): Response + protected function doIndex(int $page, RepositoryQuery $query, Request $request, Session $session): Response { $configuration = $this->getConfiguration(); @@ -127,7 +127,7 @@ abstract class CrudController extends AdminController ]); } - protected function doSort(int $page = 1, RepositoryQuery $query, EntityManager $entityManager, Request $request, Session $session): Response + protected function doSort(int $page, RepositoryQuery $query, EntityManager $entityManager, Request $request, Session $session): Response { $configuration = $this->getConfiguration(); $context = $request->query->get('context', 'index'); @@ -165,7 +165,7 @@ abstract class CrudController extends AdminController return $this->json([]); } - protected function doBatch(int $page = 1, RepositoryQuery $query, EntityManager $entityManager, Request $request, Session $session): Response + protected function doBatch(int $page, RepositoryQuery $query, EntityManager $entityManager, Request $request, Session $session): Response { $configuration = $this->getConfiguration(); $datas = $request->request->get('batch', []); From de6ca18c0ae043c4af0b8ab7525a9fde53d333c2 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Fri, 13 Jan 2023 18:20:51 +0100 Subject: [PATCH 012/229] release v1.18.0 --- CHANGELOG.md | 10 ++++++++++ src/core/Murph.php | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d2bd88..f2eebc2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ ## [Unreleased] +## [1.18.0] - 2023-01-13 +### Added +* feat(dep): add symfony/runtime +* feat(dep): add symfony/flex +### Fixed +* fix(crud): allow POST in delete actions +* fix(crud): remove default page value in abstract crud controller +* fix(admin): test site_logo before using it +* fix(ui): update z-index of choices__list--dropdown + ## [1.17.1] - 2022-12-03 ### Fixed * add mising attribute on timestampable (doctrine) diff --git a/src/core/Murph.php b/src/core/Murph.php index e920159..060e854 100644 --- a/src/core/Murph.php +++ b/src/core/Murph.php @@ -3,7 +3,7 @@ namespace App\Core; if (!defined('MURPH_VERSION')) { - define('MURPH_VERSION', 'v1.17.1'); + define('MURPH_VERSION', 'v1.18.0'); } /** From 1cea077598710ed1e020ef222adb821d2da7ecab Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Thu, 2 Mar 2023 19:06:50 +0100 Subject: [PATCH 013/229] fix translation --- src/core/Resources/translations/messages.fr.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/Resources/translations/messages.fr.yaml b/src/core/Resources/translations/messages.fr.yaml index 5d4700b..342bbec 100644 --- a/src/core/Resources/translations/messages.fr.yaml +++ b/src/core/Resources/translations/messages.fr.yaml @@ -163,7 +163,7 @@ "Filter": "Filtrer" "Force this domain": "Forcer ce nom de domaine" "Additional domains": "Domaines additionnels" -"Regular expression: do not add the delimiter": "Expréssion régulière : ne pas ajouter de délimiteur" +"Regular expression: do not add the delimiter": "Expression régulière : ne pas ajouter de délimiteur" "Content type": "Type de contenu" 'Leave blank equals "text/html"': 'Laissez vide équivaut à "text/html"' "Close": "Fermer" From 219526e3a2eb39e3e163bbdc45a13df44db7334b Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Thu, 2 Mar 2023 19:10:08 +0100 Subject: [PATCH 014/229] allow webp image in filemanager --- src/core/DependencyInjection/Configuration.php | 1 + .../assets/js/components/file-manager/FileIcon.vue | 4 ++-- src/core/Resources/views/file_manager/info.html.twig | 4 ++-- .../Resources/views/form/bootstrap_4_form_theme.html.twig | 6 +++--- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/core/DependencyInjection/Configuration.php b/src/core/DependencyInjection/Configuration.php index 6999049..e007c9c 100644 --- a/src/core/DependencyInjection/Configuration.php +++ b/src/core/DependencyInjection/Configuration.php @@ -15,6 +15,7 @@ class Configuration implements ConfigurationInterface 'image/jpeg', 'image/gif', 'image/svg+xml', + 'image/webp', 'video/mp4', 'audio/mpeg3', 'audio/x-mpeg-3', diff --git a/src/core/Resources/assets/js/components/file-manager/FileIcon.vue b/src/core/Resources/assets/js/components/file-manager/FileIcon.vue index 7854860..c04c6c5 100644 --- a/src/core/Resources/assets/js/components/file-manager/FileIcon.vue +++ b/src/core/Resources/assets/js/components/file-manager/FileIcon.vue @@ -19,7 +19,7 @@ Routing.setRoutingData(routes) const map = { 'fa fa-file-pdf': ['application/pdf'], - 'fa fa-file-image': ['image/png', 'image/jpg', 'image/jpeg', 'image/gif'], + 'fa fa-file-image': ['image/png', 'image/jpg', 'image/jpeg', 'image/gif', 'image/webp'], 'fa fa-file-audio': ['application/ogg', 'audio/mp3', 'audio/mpeg', 'audio/wav'], 'fa fa-file-archive': ['application/zip', 'multipart/x-zip', 'application/rar', 'application/x-rar-compressed', 'application/x-zip-compressed', 'application/tar', 'application/x-tar'], 'fa fa-file-alt': ['application/rtf'], @@ -53,7 +53,7 @@ export default { return } - if (['image/png', 'image/jpg', 'image/jpeg', 'image/gif'].indexOf(this.mime) === -1) { + if (['image/png', 'image/jpg', 'image/jpeg', 'image/gif', 'image/webp'].indexOf(this.mime) === -1) { this.thumbnail = null return } diff --git a/src/core/Resources/views/file_manager/info.html.twig b/src/core/Resources/views/file_manager/info.html.twig index eefadfe..33a10a4 100644 --- a/src/core/Resources/views/file_manager/info.html.twig +++ b/src/core/Resources/views/file_manager/info.html.twig @@ -26,7 +26,7 @@ {% endif %} - {% if splInfo.extension|lower in ['jpeg', 'jpg', 'gif', 'png', 'svg'] %} + {% if splInfo.extension|lower in ['jpeg', 'jpg', 'gif', 'png', 'svg', 'webp'] %}