Skip to content
This repository has been archived by the owner on Oct 19, 2022. It is now read-only.

Commit

Permalink
Merge pull request #49 from stormbyte/master
Browse files Browse the repository at this point in the history
Add slider as query param with PathStrategy
  • Loading branch information
edwinljacobs authored Sep 18, 2019
2 parents e56f4ce + 3f948f0 commit 8ca1497
Showing 1 changed file with 10 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,17 @@ public function buildUrl(Emico_Tweakwise_Model_Catalog_Layer $state, Emico_Tweak
protected function buildAttributeUriPath(Emico_Tweakwise_Model_Catalog_Layer $state, Emico_Tweakwise_Model_Bus_Type_Facet $facet = null, Emico_Tweakwise_Model_Bus_Type_Attribute $attribute = null)
{
$slugs = [];
$queryParams = [];
$slugMapper = $this->getSlugAttributeMapper();
foreach ($state->getSelectedFacets() as $selectedFacet) {
if ($selectedFacet->getFacetSettings()->getSelectionType() === Emico_Tweakwise_Model_Bus_Type_Facet_Settings::SELECTION_TYPE_SLIDER) {
continue;
}

foreach ($selectedFacet->getActiveAttributes() as $activeAttribute) {
if ($selectedFacet->isCategory() || $activeAttribute === $attribute) {
continue;
}
if ($selectedFacet->isSlider()) {
$queryParams[$selectedFacet->getFacetSettings()->getAttributeName()] = implode('-', $selectedFacet->getValue());
continue;
}
$facetSettings = $selectedFacet->getFacetSettings();
$slugs[] = [
'facet' => $facetSettings->getUrlKey(),
Expand All @@ -97,15 +98,15 @@ protected function buildAttributeUriPath(Emico_Tweakwise_Model_Catalog_Layer $st
];
}

return $this->getPathFromSlugs($slugs, $state);
return $this->getPathFromSlugs($slugs, $state, $queryParams);
}

/**
* @param array $slugs
* @param Emico_Tweakwise_Model_Catalog_Layer $state
* @return string
*/
protected function getPathFromSlugs(array $slugs, Emico_Tweakwise_Model_Catalog_Layer $state)
protected function getPathFromSlugs(array $slugs, Emico_Tweakwise_Model_Catalog_Layer $state, array $queryParams = [])
{
// Sort facets so we get canonical URL's for certain filter combinations
$this->sortSlugs($slugs, $state);
Expand All @@ -116,6 +117,9 @@ protected function getPathFromSlugs(array $slugs, Emico_Tweakwise_Model_Catalog_
}

$path = rtrim($path, '/');
if( !empty($queryParams) ){
$path .= '?'.http_build_query($queryParams);
}

return $path;
}
Expand Down

0 comments on commit 8ca1497

Please sign in to comment.