fix: generate correct referring urls
This commit is contained in:
@@ -137,6 +137,7 @@ class SearchController extends ActionController
|
||||
->uriBuilder
|
||||
->reset()
|
||||
->setTargetPageUid($this->settings['defaultSearchPageUid'])
|
||||
->setCreateAbsoluteUri(true)
|
||||
->uriFor(
|
||||
'searchresult',
|
||||
['filterSettings' => $filterSettings],
|
||||
|
||||
@@ -44,6 +44,7 @@ class ProductViewHelper extends AbstractViewHelper
|
||||
$this->registerArgument('forceHotelUid', 'bool', 'Whether to force link a hotel');
|
||||
$this->registerArgument('dateFrom', 'string', 'Date to limit table on detail page by (Y-m-d)');
|
||||
$this->registerArgument('dateTo', 'string', 'Date to limit table on detail page by (Y-m-d)');
|
||||
$this->registerArgument('ref', 'string', 'Referring URL');
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -81,13 +82,21 @@ class ProductViewHelper extends AbstractViewHelper
|
||||
|
||||
$targetPageUid = is_array($product) ? (int)$product['detailPage'] : $product->getDetailPage();
|
||||
|
||||
return $renderingContext
|
||||
$uri = $renderingContext
|
||||
->getControllerContext()
|
||||
->getUriBuilder()
|
||||
->reset()
|
||||
->setTargetPageUid($targetPageUid)
|
||||
->uriFor('detail', $linkArguments, 'Product', 'epproducts', 'product_detail')
|
||||
;
|
||||
|
||||
if ($arguments['ref']) {
|
||||
$referringPageUri = urlencode($arguments['ref']);
|
||||
$separator = false !== strpos($uri, '?') ? '&' : '?';
|
||||
$uri .= $separator . 'ref=' . $referringPageUri;
|
||||
}
|
||||
|
||||
return $uri;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
<f:section name="TeaserImage">
|
||||
<div class="relative{f:if(condition: landscape, then: ' sm:w-2/5')}">
|
||||
<a href="{ep:uri.product(forceHotelUid: forceHotelUid, product: product, hotel: hotel, dateFrom: dateFrom, dateTo: dateTo)}{f:if(condition: referringPageUri, then: '?ref={referringPageUri -> f:format.urlencode()}')}"
|
||||
<a href="{ep:uri.product(forceHotelUid: forceHotelUid, product: product, hotel: hotel, dateFrom: dateFrom, dateTo: dateTo, ref: referringPageUri)}"
|
||||
title="{region.name} {product.name} Details und Buchen">
|
||||
<f:if condition="{productImage}">
|
||||
<f:then>
|
||||
|
||||
Reference in New Issue
Block a user