From c718f0e979fb85353dcc060942c8979229027095 Mon Sep 17 00:00:00 2001 From: Guite Date: Tue, 19 Apr 2016 16:40:02 +0200 Subject: [PATCH 01/31] refactored mailer module to 2.0 style --- .../Stage/Install/CompleteStage.php | 2 +- .../BlocksModule/Container/LinkContainer.php | 5 +- .../Controller/AdminController.php | 12 +- .../Controller/BlockController.php | 12 +- .../Controller/PositionController.php | 12 +- .../ZikulaBlocksExtension.php | 11 + .../Resources/config/services.xml | 2 +- .../Resources/views/Admin/config.html.twig | 1 - .../Container/LinkContainer.php | 109 +++--- .../Controller/ModuleController.php | 4 +- .../ZikulaExtensionsExtension.php | 11 + .../Resources/config/services.xml | 2 +- .../Resources/views/Config/config.html.twig | 1 - src/system/MailerModule/Api/AdminApi.php | 48 --- src/system/MailerModule/Api/MailerApi.php | 340 ++++++++++++++++++ src/system/MailerModule/Api/UserApi.php | 185 +--------- .../MailerModule/Container/LinkContainer.php | 105 ++++++ .../Controller/AdminController.php | 186 +++++++--- .../ZikulaMailerExtension.php | 35 ++ .../Form/Handler/ModifyConfigHandler.php | 162 --------- .../Form/Handler/TestConfigHandler.php | 126 ------- .../MailerModule/Form/Type/ConfigType.php | 211 +++++++++++ .../MailerModule/Form/Type/TestType.php | 136 +++++++ .../Resources/config/services.xml | 52 +++ .../Resources/views/Admin/config.html.twig | 62 ++++ .../Resources/views/Admin/modifyconfig.tpl | 135 ------- .../Resources/views/Admin/test.html.twig | 48 +++ .../Resources/views/Admin/testconfig.tpl | 86 ----- .../MailerModule/Twig/TwigExtension.php | 52 +++ 29 files changed, 1299 insertions(+), 854 deletions(-) delete mode 100644 src/system/MailerModule/Api/AdminApi.php create mode 100644 src/system/MailerModule/Api/MailerApi.php create mode 100644 src/system/MailerModule/Container/LinkContainer.php create mode 100644 src/system/MailerModule/DependencyInjection/ZikulaMailerExtension.php delete mode 100644 src/system/MailerModule/Form/Handler/ModifyConfigHandler.php delete mode 100644 src/system/MailerModule/Form/Handler/TestConfigHandler.php create mode 100644 src/system/MailerModule/Form/Type/ConfigType.php create mode 100644 src/system/MailerModule/Form/Type/TestType.php create mode 100644 src/system/MailerModule/Resources/config/services.xml create mode 100644 src/system/MailerModule/Resources/views/Admin/config.html.twig delete mode 100644 src/system/MailerModule/Resources/views/Admin/modifyconfig.tpl create mode 100644 src/system/MailerModule/Resources/views/Admin/test.html.twig delete mode 100644 src/system/MailerModule/Resources/views/Admin/testconfig.tpl create mode 100644 src/system/MailerModule/Twig/TwigExtension.php diff --git a/src/lib/Zikula/Bundle/CoreInstallerBundle/Stage/Install/CompleteStage.php b/src/lib/Zikula/Bundle/CoreInstallerBundle/Stage/Install/CompleteStage.php index fabf78a63e..11939ccd12 100644 --- a/src/lib/Zikula/Bundle/CoreInstallerBundle/Stage/Install/CompleteStage.php +++ b/src/lib/Zikula/Bundle/CoreInstallerBundle/Stage/Install/CompleteStage.php @@ -62,7 +62,7 @@ public function getResponse(Request $request) } else { $request->getSession()->getFlashBag()->add('warning', __('Email settings are not yet configured. Please configure them below.')); - return new RedirectResponse($this->container->get('router')->generate('zikulamailermodule_admin_modifyconfig', array(), RouterInterface::ABSOLUTE_URL)); + return new RedirectResponse($this->container->get('router')->generate('zikulamailermodule_admin_config', array(), RouterInterface::ABSOLUTE_URL)); } } diff --git a/src/system/BlocksModule/Container/LinkContainer.php b/src/system/BlocksModule/Container/LinkContainer.php index c8d55aa50a..374a783825 100644 --- a/src/system/BlocksModule/Container/LinkContainer.php +++ b/src/system/BlocksModule/Container/LinkContainer.php @@ -24,10 +24,12 @@ class LinkContainer implements LinkContainerInterface * @var Translator */ private $translator; + /** * @var RouterInterface */ private $router; + /** * @var PermissionApi */ @@ -87,8 +89,7 @@ private function getAdmin() 'text' => $this->translator->__('Create new block'), 'icon' => 'plus' ]; - } - if ($this->permissionApi->hasPermission('ZikulaBlocksModule::', '::', ACCESS_ADD)) { + $links[] = [ 'url' => $this->router->generate('zikulablocksmodule_position_edit'), 'text' => $this->translator->__('Create new block position'), diff --git a/src/system/BlocksModule/Controller/AdminController.php b/src/system/BlocksModule/Controller/AdminController.php index 152920c4a6..ba06c986af 100644 --- a/src/system/BlocksModule/Controller/AdminController.php +++ b/src/system/BlocksModule/Controller/AdminController.php @@ -118,6 +118,7 @@ public function viewAction(Request $request) * @Template * * @param Request $request + * @throws AccessDeniedException Thrown if the user doesn't have admin access to the module * @return \Symfony\Component\HttpFoundation\RedirectResponse|\Symfony\Component\HttpFoundation\Response */ public function configAction(Request $request) @@ -127,11 +128,12 @@ public function configAction(Request $request) } $form = $this->createFormBuilder($this->getVars()) - ->add('collapseable', 'checkbox', ['label' => __('Enable block collapse icons'), + ->add('collapseable', 'Symfony\Component\Form\Extension\Core\Type\CheckboxType', [ + 'label' => $this->__('Enable block collapse icons'), 'required' => false ]) - ->add('save', 'submit', ['label' => 'Save']) - ->add('cancel', 'submit', ['label' => 'Cancel']) + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Save')]) + ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Cancel')]) ->getForm(); $form->handleRequest($request); @@ -139,10 +141,10 @@ public function configAction(Request $request) if ($form->isValid()) { if ($form->get('save')->isClicked()) { $this->setVars($form->getData()); - $this->addFlash('status', __('Done! Module configuration updated.')); + $this->addFlash('status', $this->__('Done! Module configuration updated.')); } if ($form->get('cancel')->isClicked()) { - $this->addFlash('status', __('Operation cancelled.')); + $this->addFlash('status', $this->__('Operation cancelled.')); } return $this->redirect($this->generateUrl('zikulablocksmodule_admin_view')); diff --git a/src/system/BlocksModule/Controller/BlockController.php b/src/system/BlocksModule/Controller/BlockController.php index 07446da831..db1a4255ee 100644 --- a/src/system/BlocksModule/Controller/BlockController.php +++ b/src/system/BlocksModule/Controller/BlockController.php @@ -164,8 +164,8 @@ public function deleteAction(Request $request, BlockEntity $blockEntity) } $form = $this->createFormBuilder() - ->add('delete', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => 'Delete']) - ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => 'Cancel']) + ->add('delete', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Delete')]) + ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Cancel')]) ->getForm(); $form->handleRequest($request); @@ -247,11 +247,11 @@ private function getBlockModifyOutput($blockClassInstance, BlockEntity $blockEnt */ private function formContentModify(Request $request, BlockEntity $blockEntity = null) { + $options = []; if (isset($blockEntity)) { $options = ['data' => $blockEntity->getContent() == [] ? '' : $blockEntity->getContent()]; - } else { - $options = []; } + $form = $this->createFormBuilder() ->add('content', 'Symfony\Component\Form\Extension\Core\Type\TextareaType', $options) ->getForm(); @@ -277,7 +277,7 @@ private function formContentModify(Request $request, BlockEntity $blockEntity = public function viewAction(BlockEntity $blockEntity = null) { return $this->render('@ZikulaBlocksModule/Admin/blockview.html.twig', [ - 'block' => $blockEntity, - ]); + 'block' => $blockEntity, + ]); } } diff --git a/src/system/BlocksModule/Controller/PositionController.php b/src/system/BlocksModule/Controller/PositionController.php index 85817b175c..85701e59d9 100644 --- a/src/system/BlocksModule/Controller/PositionController.php +++ b/src/system/BlocksModule/Controller/PositionController.php @@ -59,10 +59,10 @@ public function editAction(Request $request, BlockPositionEntity $positionEntity $em = $this->getDoctrine()->getManager(); $em->persist($positionEntity); $em->flush(); - $this->addFlash('status', __('Position saved!')); + $this->addFlash('status', $this->__('Position saved!')); } if ($form->get('cancel')->isClicked()) { - $this->addFlash('status', __('Operation cancelled.')); + $this->addFlash('status', $this->__('Operation cancelled.')); } return $this->redirect($this->generateUrl('zikulablocksmodule_admin_view')); @@ -91,8 +91,8 @@ public function deleteAction(Request $request, BlockPositionEntity $positionEnti } $form = $this->createFormBuilder() - ->add('delete', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => 'Delete']) - ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => 'Cancel']) + ->add('delete', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Delete')]) + ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Cancel')]) ->getForm(); $form->handleRequest($request); @@ -102,10 +102,10 @@ public function deleteAction(Request $request, BlockPositionEntity $positionEnti $em = $this->getDoctrine()->getManager(); $em->remove($positionEntity); $em->flush(); - $this->addFlash('status', __('Done! Position deleted.')); + $this->addFlash('status', $this->__('Done! Position deleted.')); } if ($form->get('cancel')->isClicked()) { - $this->addFlash('status', __('Operation cancelled.')); + $this->addFlash('status', $this->__('Operation cancelled.')); } return $this->redirect($this->generateUrl('zikulablocksmodule_admin_view')); diff --git a/src/system/BlocksModule/DependencyInjection/ZikulaBlocksExtension.php b/src/system/BlocksModule/DependencyInjection/ZikulaBlocksExtension.php index d791d6e01b..9272e8d6d7 100644 --- a/src/system/BlocksModule/DependencyInjection/ZikulaBlocksExtension.php +++ b/src/system/BlocksModule/DependencyInjection/ZikulaBlocksExtension.php @@ -1,4 +1,15 @@ - + diff --git a/src/system/BlocksModule/Resources/views/Admin/config.html.twig b/src/system/BlocksModule/Resources/views/Admin/config.html.twig index 23a0890271..b4d9a8a4e6 100644 --- a/src/system/BlocksModule/Resources/views/Admin/config.html.twig +++ b/src/system/BlocksModule/Resources/views/Admin/config.html.twig @@ -21,6 +21,5 @@ {{ form_end(form) }} - {{ adminFooter() }} diff --git a/src/system/ExtensionsModule/Container/LinkContainer.php b/src/system/ExtensionsModule/Container/LinkContainer.php index ab12a63fa0..babc7f606f 100644 --- a/src/system/ExtensionsModule/Container/LinkContainer.php +++ b/src/system/ExtensionsModule/Container/LinkContainer.php @@ -24,10 +24,12 @@ class LinkContainer implements LinkContainerInterface * @var Translator */ private $translator; + /** * @var RouterInterface */ private $router; + /** * @var PermissionApi */ @@ -71,51 +73,72 @@ public function getLinks($type = LinkContainerInterface::TYPE_ADMIN) */ private function getAdmin() { - $links = array(); - - if ($this->permissionApi->hasPermission('ZikulaExtensionsModule::', '::', ACCESS_ADMIN)) { - $links[] = [ - 'url' => $this->router->generate('zikulaextensionsmodule_module_viewmodulelist'), - 'text' => $this->translator->__('Extension List'), - 'icon' => 'list' - ]; - - $links[] = array( - 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins'), - 'text' => $this->translator->__('Plugins list'), - 'icon' => 'table', - 'links' => array( - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins'), - 'text' => $this->translator->__('All')), - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('state' => \PluginUtil::NOTINSTALLED)), - 'text' => $this->translator->__('Not installed')), - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('state' => \PluginUtil::DISABLED)), - 'text' => $this->translator->__('Inactive')), - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('state' => \PluginUtil::ENABLED)), - 'text' => $this->translator->__('Active')) - )); - - $links[] = array( - 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('systemplugins' => true)), - 'text' => $this->translator->__('System Plugins'), - 'icon' => 'table', - 'links' => array( - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('systemplugins' => true)), - 'text' => $this->translator->__('All')), - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('systemplugins' => true, 'state' => \PluginUtil::NOTINSTALLED)), - 'text' => $this->translator->__('Not installed')), - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('systemplugins' => true, 'state' => \PluginUtil::DISABLED)), - 'text' => $this->translator->__('Inactive')), - array('url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', array('systemplugins' => true, 'state' => \PluginUtil::ENABLED)), - 'text' => $this->translator->__('Active')) - )); - - $links[] = array( - 'url' => $this->router->generate('zikulaextensionsmodule_config_config'), - 'text' => $this->translator->__('Settings'), - 'icon' => 'wrench'); + $links = []; + + if (!$this->permissionApi->hasPermission('ZikulaExtensionsModule::', '::', ACCESS_ADMIN)) { + return $links; } + $links[] = [ + 'url' => $this->router->generate('zikulaextensionsmodule_module_viewmodulelist'), + 'text' => $this->translator->__('Extension List'), + 'icon' => 'list' + ]; + + $links[] = [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins'), + 'text' => $this->translator->__('Plugins list'), + 'icon' => 'table', + 'links' => [ + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins'), + 'text' => $this->translator->__('All') + ], + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['state' => \PluginUtil::NOTINSTALLED]), + 'text' => $this->translator->__('Not installed') + ], + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['state' => \PluginUtil::DISABLED]), + 'text' => $this->translator->__('Inactive') + ], + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['state' => \PluginUtil::ENABLED]), + 'text' => $this->translator->__('Active') + ] + ] + ]; + + $links[] = [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['systemplugins' => true]), + 'text' => $this->translator->__('System Plugins'), + 'icon' => 'table', + 'links' => [ + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['systemplugins' => true]), + 'text' => $this->translator->__('All') + ], + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['systemplugins' => true, 'state' => \PluginUtil::NOTINSTALLED]), + 'text' => $this->translator->__('Not installed') + ], + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['systemplugins' => true, 'state' => \PluginUtil::DISABLED]), + 'text' => $this->translator->__('Inactive') + ], + [ + 'url' => $this->router->generate('zikulaextensionsmodule_admin_viewplugins', ['systemplugins' => true, 'state' => \PluginUtil::ENABLED]), + 'text' => $this->translator->__('Active') + ] + ] + ]; + + $links[] = [ + 'url' => $this->router->generate('zikulaextensionsmodule_config_config'), + 'text' => $this->translator->__('Settings'), + 'icon' => 'wrench' + ]; + return $links; } diff --git a/src/system/ExtensionsModule/Controller/ModuleController.php b/src/system/ExtensionsModule/Controller/ModuleController.php index 7df9559df6..b8fc5b3c0d 100644 --- a/src/system/ExtensionsModule/Controller/ModuleController.php +++ b/src/system/ExtensionsModule/Controller/ModuleController.php @@ -390,8 +390,8 @@ public function uninstallAction(Request $request, ExtensionEntity $extension) $blocks = $this->getDoctrine()->getManager()->getRepository('ZikulaBlocksModule:BlockEntity')->findBy(['module' => $extension]); $form = $this->createFormBuilder() - ->add('uninstall', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => 'Delete']) - ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => 'Cancel']) + ->add('uninstall', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Delete')]) + ->add('cancel', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', ['label' => $this->__('Cancel')]) ->getForm(); $form->handleRequest($request); diff --git a/src/system/ExtensionsModule/DependencyInjection/ZikulaExtensionsExtension.php b/src/system/ExtensionsModule/DependencyInjection/ZikulaExtensionsExtension.php index c70658ac85..b3490a35a2 100644 --- a/src/system/ExtensionsModule/DependencyInjection/ZikulaExtensionsExtension.php +++ b/src/system/ExtensionsModule/DependencyInjection/ZikulaExtensionsExtension.php @@ -1,4 +1,15 @@ - + diff --git a/src/system/ExtensionsModule/Resources/views/Config/config.html.twig b/src/system/ExtensionsModule/Resources/views/Config/config.html.twig index ca092d9514..d85ccedbb0 100644 --- a/src/system/ExtensionsModule/Resources/views/Config/config.html.twig +++ b/src/system/ExtensionsModule/Resources/views/Config/config.html.twig @@ -22,7 +22,6 @@ {{ form_end(form) }} - {{ adminFooter() }}