From 2db9ff0ecc3ecb9d2c85362a99b466bc812c4a3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Mon, 22 Aug 2022 17:20:07 +0200 Subject: [PATCH] Make running costs editable in plugin config --- .../Controller/GroupsPriceController.php | 1 + .../flexform_groups_price_calculator.xml | 28 +++++++++++++++++++ .../TCA/Overrides/tt_content.php | 6 ++++ .../Private/Templates/GroupsPrice/Index.html | 1 + 4 files changed, 36 insertions(+) create mode 100644 public/typo3conf/ext/ep_products/Configuration/FlexForms/flexform_groups_price_calculator.xml diff --git a/public/typo3conf/ext/ep_products/Classes/Controller/GroupsPriceController.php b/public/typo3conf/ext/ep_products/Classes/Controller/GroupsPriceController.php index 3d64017c..c3213fe0 100644 --- a/public/typo3conf/ext/ep_products/Classes/Controller/GroupsPriceController.php +++ b/public/typo3conf/ext/ep_products/Classes/Controller/GroupsPriceController.php @@ -41,6 +41,7 @@ class GroupsPriceController extends ActionController }); $this->view->assign('hotel', $hotel); + $this->view->assign('runningCosts', $this->settings['runningCosts']); $this->view->assign('configs', json_encode(array_values($configs), JSON_HEX_APOS)); $this->view->assign('boards', json_encode($hotel->getGroupsPriceBoards()->toArray(), JSON_HEX_APOS)); $this->view->assign('options', json_encode($hotel->getGroupsPriceOptions()->toArray(), JSON_HEX_APOS)); diff --git a/public/typo3conf/ext/ep_products/Configuration/FlexForms/flexform_groups_price_calculator.xml b/public/typo3conf/ext/ep_products/Configuration/FlexForms/flexform_groups_price_calculator.xml new file mode 100644 index 00000000..9e172992 --- /dev/null +++ b/public/typo3conf/ext/ep_products/Configuration/FlexForms/flexform_groups_price_calculator.xml @@ -0,0 +1,28 @@ + + + 1 + + + + + + Konfiguration + + array + + + + 0 + + + input + 1.7 + double2,required + + + + + + + + diff --git a/public/typo3conf/ext/ep_products/Configuration/TCA/Overrides/tt_content.php b/public/typo3conf/ext/ep_products/Configuration/TCA/Overrides/tt_content.php index cbe627a4..0fb45fe2 100644 --- a/public/typo3conf/ext/ep_products/Configuration/TCA/Overrides/tt_content.php +++ b/public/typo3conf/ext/ep_products/Configuration/TCA/Overrides/tt_content.php @@ -262,4 +262,10 @@ call_user_func(function () { 'FILE:EXT:ep_products/Configuration/FlexForms/flexform_teammembers.xml' ); + $GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist']['epproducts_hotel_groups_price'] = 'pi_flexform'; + \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue( + 'epproducts_hotel_groups_price', + 'FILE:EXT:ep_products/Configuration/FlexForms/flexform_groups_price_calculator.xml' + ); + }); diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Templates/GroupsPrice/Index.html b/public/typo3conf/ext/ep_theme/Resources/Private/Templates/GroupsPrice/Index.html index ea31f078..20d018a8 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Templates/GroupsPrice/Index.html +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Templates/GroupsPrice/Index.html @@ -13,6 +13,7 @@ configs-json='{configs}' boards-json='{boards}' options-json='{options}' + running-costs-factor="{runningCosts}" endpoint="{ep:uri.ajax(action: 'processForm', controller: 'AjaxGroupsPrice', pageUid: settings.defaultAjaxUid, arguments: '{hotel: hotel}')}" loader-uri="{f:uri.image(src: 'EXT:ep_theme/Resources/Public/images/ajax-loader-white.gif')}" >