From 2df9ae601eb1bfa6ef670468deda3de9a10c1d68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bjo=CC=88rn=20Fromme?= Date: Wed, 21 Aug 2019 11:35:58 +0200 Subject: [PATCH 1/3] Remove obsolete method --- .../Assets/js/components/ProductDetail.vue | 27 ------------------- 1 file changed, 27 deletions(-) diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue index 8e3de65b..8da007d6 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue @@ -116,33 +116,6 @@ EventBus.$emit('tableLoaded'); }); }, - loadSelectableDates () { - this.loading = true; - this.datesShow = true; - this.priceTableShow = false; - this.detailShow = false; - let query = {}; - query[this.argumentPrefix + '[product]'] = this.filterSettings; - axios({ - url: this.uris['dateslist'], - method: 'post', - data: $.param(query) - }).then(response => { - const json = response.data; - if (json.dates.length === 1) { - this.singleDate = true; - let dateRow = json.dates[0]; - this.loadPriceTableView(dateRow.dateUid); - } else { - this.singleDate = false; - this.datesRows = json.dates; - this.bookable = json.bookable; - this.altLabel = json.altLabel; - this.altProductLink = json.altProductLink; - this.loading = false; - } - }); - }, loadDatesView (scroll = true) { if (this.daytrip) { this.loading = false; From c9dcdd57cb717b0f7963153dc9dbdf6650e32a9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bjo=CC=88rn=20Fromme?= Date: Wed, 21 Aug 2019 11:36:21 +0200 Subject: [PATCH 2/3] Remove timestamp from ajax urls --- .../ext/ep_theme/Classes/ViewHelpers/Uri/AjaxViewHelper.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/public/typo3conf/ext/ep_theme/Classes/ViewHelpers/Uri/AjaxViewHelper.php b/public/typo3conf/ext/ep_theme/Classes/ViewHelpers/Uri/AjaxViewHelper.php index 80a860cc..4b9aa8c2 100644 --- a/public/typo3conf/ext/ep_theme/Classes/ViewHelpers/Uri/AjaxViewHelper.php +++ b/public/typo3conf/ext/ep_theme/Classes/ViewHelpers/Uri/AjaxViewHelper.php @@ -79,9 +79,6 @@ class AjaxViewHelper extends ActionViewHelper // Force absolute urls $arguments['absolute'] = true; - // Add timestamp as additional argument to prevent caching - $arguments['additionalParams'] = ['t' => time()]; - return parent::renderStatic( $arguments, $renderChildrenClosure, From 7a9855d9163cee50fee82dbfe496483b8c7ab44b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bjo=CC=88rn=20Fromme?= Date: Wed, 21 Aug 2019 11:36:46 +0200 Subject: [PATCH 3/3] Don't include filtersettings when fetching date or pricetables --- .../Classes/Controller/AjaxDateController.php | 11 +++++------ .../Classes/Controller/AjaxTableController.php | 10 +++------- .../Private/Assets/js/components/ProductDetail.vue | 12 +----------- 3 files changed, 9 insertions(+), 24 deletions(-) diff --git a/public/typo3conf/ext/ep_products/Classes/Controller/AjaxDateController.php b/public/typo3conf/ext/ep_products/Classes/Controller/AjaxDateController.php index 6ff3af1f..a28c6bf6 100644 --- a/public/typo3conf/ext/ep_products/Classes/Controller/AjaxDateController.php +++ b/public/typo3conf/ext/ep_products/Classes/Controller/AjaxDateController.php @@ -94,11 +94,10 @@ class AjaxDateController extends ActionController /** * @param Product $product * @param Hotel $hotel - * @param FilterSettings $filterSettings * * @return string */ - public function datesAction(Product $product, Hotel $hotel = null, FilterSettings $filterSettings = null) + public function datesAction(Product $product, Hotel $hotel = null) { if ($hotel === null) { return json_encode([ @@ -108,10 +107,10 @@ class AjaxDateController extends ActionController 'altLabel' => null, ]); } - if ($filterSettings === null) { - $forcedConceptUids = GeneralUtility::trimExplode(',', $this->settings['forcedConceptUids'], true); - $filterSettings = $this->filterService->getDefaultFilterSettings($forcedConceptUids, false); - } + + $forcedConceptUids = GeneralUtility::trimExplode(',', $this->settings['forcedConceptUids'], true); + $filterSettings = $this->filterService->getDefaultFilterSettings($forcedConceptUids, false); + $altProductLink = null; $altLabel = null; if ($product->getAltProduct()) { diff --git a/public/typo3conf/ext/ep_products/Classes/Controller/AjaxTableController.php b/public/typo3conf/ext/ep_products/Classes/Controller/AjaxTableController.php index 5d12e13f..98aff7e6 100644 --- a/public/typo3conf/ext/ep_products/Classes/Controller/AjaxTableController.php +++ b/public/typo3conf/ext/ep_products/Classes/Controller/AjaxTableController.php @@ -28,7 +28,6 @@ namespace EP\EpProducts\Controller; ***************************************************************/ use EP\EpProducts\Domain\Model\Date; -use EP\EpProducts\Domain\Model\FilterSettings; use EP\EpProducts\Domain\Model\Hotel; use EP\EpProducts\Domain\Model\Product; use EP\EpProducts\Service\DateService; @@ -85,7 +84,6 @@ class AjaxTableController extends ActionController /** * @param Product $product * @param Hotel $hotel - * @param FilterSettings $filterSettings * @param Date $date * * @return string @@ -95,14 +93,12 @@ class AjaxTableController extends ActionController ( Product $product, Hotel $hotel, - FilterSettings $filterSettings = null, Date $date = null ) { - if ($filterSettings === null) { - $forcedConceptUids = GeneralUtility::trimExplode(',', $this->settings['forcedConceptUids'], true); - $filterSettings = $this->filterService->getDefaultFilterSettings($forcedConceptUids, false); - } + $forcedConceptUids = GeneralUtility::trimExplode(',', $this->settings['forcedConceptUids'], true); + $filterSettings = $this->filterService->getDefaultFilterSettings($forcedConceptUids, false); + if ($reseller = $this->resellerDataService->getResellerForCurrentDomain()) { $paCode = $reseller['paCode']; } else { diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue index 8da007d6..1a5b237b 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/ProductDetail.vue @@ -17,8 +17,6 @@ import dayjs from 'dayjs' import 'dayjs/locale/de' - import defaultFilterSettings from '../_filtersettings' - export default { components: { DatesTable, @@ -51,7 +49,6 @@ loading: false, activeSection: null, singleDate: false, - filterSettings: defaultFilterSettings, referringPage: null } }, @@ -92,12 +89,9 @@ this.datesShow = true; this.priceTableShow = false; this.detailShow = false; - let query = {}; - query[this.argumentPrefix + '[filterSettings]'] = this.filterSettings; axios({ url: this.uris['dates'], - method: 'post', - data: $.param(query) + method: 'post' }).then(response => { const json = response.data; if (json.dates.length === 1) { @@ -134,7 +128,6 @@ this.priceTableShow = true; this.detailShow = false; let query = {}; - query[this.argumentPrefix + '[filterSettings]'] = this.filterSettings; query[this.argumentPrefix + '[date]'] = dateUid; axios({ url: this.uris['pricetable'], @@ -198,9 +191,6 @@ } }, created () { - if (sessionStorage.getItem('filterSettings')) { - this.filterSettings = JSON.parse(sessionStorage.getItem('filterSettings')); - } if (sessionStorage.getItem('referringPage')) { this.referringPage = JSON.parse(sessionStorage.getItem('referringPage')); sessionStorage.removeItem('referringPage');