diff --git a/deploy.php b/deploy.php index c76c0179..e5d5d64e 100644 --- a/deploy.php +++ b/deploy.php @@ -63,11 +63,13 @@ host('production') ->forwardAgent() ->multiplexing() ->set('deploy_path', '/home/www/p546128/html/{{application}}') + ->set('buspronet_path', '/home/www/p546128/html/kuschick/buspronet/buspronet') ->set('bin/php', '/usr/local/bin/php') ->set('http_user', 'p546128') ->set('bin/composer', '/usr/local/bin/composer') ->set('rsync_src', __DIR__) ->set('rsync', $rsyncOptions) + ->set('bin/cachetool', 'cachetool-7.0.0.phar') ->set('cachetool_args', '--web=SymfonyHttpClient --web-path={{release_path}}/public/ --web-url=https://www.ep-reisen.de') ; @@ -86,6 +88,7 @@ host('staging') ->set('bin/composer', '/usr/local/bin/composer') ->set('rsync_src', __DIR__) ->set('rsync', $rsyncOptions) + ->set('bin/cachetool', 'cachetool-7.0.0.phar') ->set('cachetool_args', '--web=SymfonyHttpClient --web-path={{release_path}}/public/ --web-url=https://staging.ep-reisen.de --web-basic-auth=ep:reisen') ->set('shared_files', $sharedFilesStaging) ; @@ -102,6 +105,7 @@ task('deploy', [ 'typo3:language:update', 'typo3:cache:flush', 'deploy:symlink', + 'deploy:buspronet:symlink', 'deploy:unlock', 'cachetool:clear:opcache', 'cleanup', @@ -125,6 +129,10 @@ task('deploy_staging', [ 'cleanup', ]); +task('deploy:buspronet:symlink', function () { + run('ln -s {{buspronet_path}} {{release_path}}/public/buchung'); +}); + task ('deploy:assets:build', function () { runLocally('npm i && npm run build'); }); diff --git a/public/typo3conf/ext/ep_events/Configuration/TypoScript/Page/Main.typoscript b/public/typo3conf/ext/ep_events/Configuration/TypoScript/Page/Main.typoscript index 268d6cd8..f8ca01c9 100644 --- a/public/typo3conf/ext/ep_events/Configuration/TypoScript/Page/Main.typoscript +++ b/public/typo3conf/ext/ep_events/Configuration/TypoScript/Page/Main.typoscript @@ -11,12 +11,6 @@ page { main = typo3_encore:EpEventsConfig:main } - includeJS { - remarketing = https://www.googleadservices.com/pagead/conversion_async.js - remarketing.external = 1 - remarketing.disableCompression = 1 - } - includeJSFooter { main = typo3_encore:EpEventsConfig:main } @@ -73,6 +67,17 @@ page { } } + headerData.998 = TEXT + headerData.998.value ( + + + + ) + headerData.998.stdWrap.if.isTrue = {$plugin.tx_epevents.settings.googleTagManagerId} headerData.999 = TEXT headerData.999 { diff --git a/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/_cookiefirst.scss b/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/_cookiefirst.scss new file mode 100644 index 00000000..23203a11 --- /dev/null +++ b/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/_cookiefirst.scss @@ -0,0 +1,10 @@ +.cookiefirst { + h2 { + @extend .headline; + @extend .headline--primary; + } + h3 { + @extend .headline; + @extend .headline--secondary; + } +} diff --git a/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/main.scss b/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/main.scss index 19102b6d..40557ec9 100644 --- a/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/main.scss +++ b/public/typo3conf/ext/ep_events/Resources/Private/Assets/scss/main.scss @@ -38,3 +38,4 @@ $output-bourbon-deprecation-warnings: false; @import "paginator"; @import "news"; @import "datepicker"; +@import "cookiefirst"; diff --git a/public/typo3conf/ext/ep_events/Resources/Private/Partials/PageFooter.html b/public/typo3conf/ext/ep_events/Resources/Private/Partials/PageFooter.html index d2ecd247..eeb3c6c8 100644 --- a/public/typo3conf/ext/ep_events/Resources/Private/Partials/PageFooter.html +++ b/public/typo3conf/ext/ep_events/Resources/Private/Partials/PageFooter.html @@ -41,6 +41,7 @@ class="page-footer__link page-footer__link--legal">{f:translate(key: 'tx_epevents.label.legal_notice', extensionName: 'ep_events') -> f:format.raw()} {f:translate(key: 'tx_epevents.label.terms', extensionName: 'ep_events') -> f:format.raw()} + Cookie-Einstellungen diff --git a/public/typo3conf/ext/ep_products/Classes/Controller/PasswordController.php b/public/typo3conf/ext/ep_products/Classes/Controller/PasswordController.php deleted file mode 100644 index 3ec68031..00000000 --- a/public/typo3conf/ext/ep_products/Classes/Controller/PasswordController.php +++ /dev/null @@ -1,45 +0,0 @@ -, dreipunktnull - * - * All rights reserved - * - * This script is part of the TYPO3 project. The TYPO3 project is - * free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * The GNU General Public License can be found at - * http://www.gnu.org/copyleft/gpl.html. - * - * This script is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * This copyright notice MUST APPEAR in all copies of the script! - ***************************************************************/ - -use TYPO3\CMS\Core\Utility\GeneralUtility; -use TYPO3\CMS\Extbase\Mvc\Controller\ActionController; - -class PasswordController extends ActionController -{ - - public function indexAction() - { - // Conflicting argument 'id' needs to be replaced with 'bpn_id'! - $this->view->assignMultiple([ - 'bpnDbPassword' => GeneralUtility::_GET('db_passwort'), - 'bpnId' => GeneralUtility::_GET('bpn_id'), - ]); - } - -} diff --git a/public/typo3conf/ext/ep_products/Classes/Utility/BookingUrlUtility.php b/public/typo3conf/ext/ep_products/Classes/Utility/BookingUrlUtility.php index e0cb8010..ad56b665 100644 --- a/public/typo3conf/ext/ep_products/Classes/Utility/BookingUrlUtility.php +++ b/public/typo3conf/ext/ep_products/Classes/Utility/BookingUrlUtility.php @@ -28,6 +28,7 @@ namespace EP\EpProducts\Utility; ***************************************************************/ use Symfony\Component\OptionsResolver\OptionsResolver; +use TYPO3\CMS\Core\Site\SiteFinder; use TYPO3\CMS\Core\Utility\GeneralUtility; class BookingUrlUtility @@ -148,8 +149,13 @@ class BookingUrlUtility * @param array $query * @return string */ - protected static function buildUrl(array $query) + protected static function buildUrl(array $query): string { - return static::URL_BASE . '?' . http_build_query($query, '', '&'); + $pageId = $GLOBALS['TSFE']->id; + $baseUrl = GeneralUtility::makeInstance(SiteFinder::class) + ->getSiteByPageId($pageId) + ->getBase(); + + return $baseUrl . '/buchung/maske_buchung.php?' . http_build_query($query, '', '&'); } } 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 3b9e2372..a7892878 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 @@ -167,12 +167,6 @@ call_user_func(function () { 'Merkliste' ); - \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin( - 'EP.EpProducts', - 'password', - 'Passwort BusPro' - ); - $GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist']['epproducts_product_detail'] = 'pi_flexform'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue( 'epproducts_product_detail', 'FILE:EXT:ep_products/Configuration/FlexForms/flexform_product_detail.xml' diff --git a/public/typo3conf/ext/ep_products/ext_localconf.php b/public/typo3conf/ext/ep_products/ext_localconf.php index e3842edf..6701200f 100644 --- a/public/typo3conf/ext/ep_products/ext_localconf.php +++ b/public/typo3conf/ext/ep_products/ext_localconf.php @@ -267,14 +267,6 @@ $boot = function () { ] ); - \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin( - 'EP.ep_products', - 'password', - [ - 'Password' => 'index', - ] - ); - \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin( 'EP.ep_products', 'ajax', diff --git a/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/pages.php b/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/pages.php index 42215776..760c2044 100644 --- a/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/pages.php +++ b/public/typo3conf/ext/ep_theme/Configuration/TCA/Overrides/pages.php @@ -72,6 +72,15 @@ call_user_func(function() { 'eval' => 'trim' ] ], + 'tx_eptheme_navitemclass' => [ + 'exclude' => 0, + 'label' => 'CSS Klasse(n) für Topnavigation', + 'config' => [ + 'type' => 'input', + 'size' => 30, + 'eval' => 'trim' + ] + ], 'tx_eptheme_slides' => [ 'exclude' => 0, 'label' => 'Slides', @@ -118,7 +127,7 @@ call_user_func(function() { 'pages', '--div--;Kontext, tx_eptheme_context_pacode,tx_eptheme_context_country,tx_eptheme_context_region, - tx_eptheme_hide_searchbar,tx_eptheme_new_tab,tx_eptheme_bodyclass, + tx_eptheme_hide_searchbar,tx_eptheme_new_tab,tx_eptheme_bodyclass,tx_eptheme_navitemclass, --div--;Slider, tx_eptheme_slides, --div--;Badge, diff --git a/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/nlform.typoscript b/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/nlform.typoscript index 7b962455..6e80f8b6 100644 --- a/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/nlform.typoscript +++ b/public/typo3conf/ext/ep_theme/Configuration/TypoScript/ContentElements/nlform.typoscript @@ -1,4 +1,9 @@ tt_content.nlform =< lib.contentElement tt_content.nlform { templateName = NewsletterForm + variables { + formUrl = TEXT + formUrl.wrap = |/buchung/anmeldung_news.php + formUrl.data = site:base + } } diff --git a/public/typo3conf/ext/ep_theme/Configuration/TypoScript/Page/Main.typoscript b/public/typo3conf/ext/ep_theme/Configuration/TypoScript/Page/Main.typoscript index 40716447..48154441 100644 --- a/public/typo3conf/ext/ep_theme/Configuration/TypoScript/Page/Main.typoscript +++ b/public/typo3conf/ext/ep_theme/Configuration/TypoScript/Page/Main.typoscript @@ -133,6 +133,18 @@ page { settings < plugin.tx_eptheme.settings } + headerData.998 = TEXT + headerData.998.value ( + + + + ) + headerData.998.stdWrap.if.isTrue = {$plugin.tx_eptheme.settings.googleTagManagerId} + headerData.999 = TEXT headerData.999 { wrap = diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/HotelTypesSelect.vue b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/HotelTypesSelect.vue deleted file mode 100644 index 8b137891..00000000 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/components/HotelTypesSelect.vue +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/fbpixel_controller.js b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/fbpixel_controller.js index 26ad24b5..fe4dc0b5 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/fbpixel_controller.js +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/fbpixel_controller.js @@ -5,7 +5,10 @@ export default class extends Controller { static values = { props: Object } connect() { - fbq('track', 'ViewContent', this.propsValue) + const CF = window.CookieFirst + if (CF && null !== CF.consent && true === CF.consent.advertising) { + fbq('track', 'ViewContent', this.propsValue) + } } } diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/tabs_controller.js b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/tabs_controller.js index 9380237f..eaa963bc 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/tabs_controller.js +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/controllers/tabs_controller.js @@ -3,29 +3,39 @@ import { useDispatch } from 'stimulus-use' export default class extends Controller { - static targets = [ 'tab', 'button' ] + static classes = [ 'buttonActive' ] - static values = { scroll: Boolean } + static targets = [ 'tab', 'pulldown', 'label' ] + + static values = { activeTab: String } initialize() { useDispatch(this) } + connect() { + this.activeTabValue = this.tabTargets[0].dataset.tab + } + + togglePulldown() { + this.pulldownTarget.classList.toggle('hidden') + } + select(e) { - e.preventDefault() let selectedTab = e.currentTarget.dataset.tab - this.buttonTargets.forEach(element => { - let currentTab = element.dataset.tab - element.classList.toggle('button--active', selectedTab === currentTab) - }) - this.tabTargets.forEach(element => { - let currentTab = element.dataset.tab - element.classList.toggle('hidden', selectedTab !== currentTab) - }) - if (true === this.scrollValue) { - this.element.scrollIntoView({ block: 'start', behavior: 'smooth' }) - } + this.activeTabValue = selectedTab + this.pulldownTarget.classList.toggle('hidden', true) this.dispatch('selected', selectedTab) } + activeTabValueChanged() { + let activeTab = this.activeTabValue + this.tabTargets.forEach(element => { + let currentTab = element.dataset.tab + element.classList.toggle('hidden', activeTab !== currentTab) + if (activeTab === currentTab) { + this.labelTarget.innerText = element.dataset.label + } + }) + } } diff --git a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/myep/BookingEdit.vue b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/myep/BookingEdit.vue index 8a52423d..486b5c46 100644 --- a/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/myep/BookingEdit.vue +++ b/public/typo3conf/ext/ep_theme/Resources/Private/Assets/js/myep/BookingEdit.vue @@ -101,7 +101,7 @@ />
- +
@@ -132,9 +132,9 @@
Zimmer