public function allowedPresetsByName(array $dimensions)
{
$allowedPresets = array();
$preselectedDimensionPresets = array();
foreach ($dimensions as $dimensionName => $dimensionValues) {
$preset = $this->contentDimensionsPresetSource->findPresetByDimensionValues($dimensionName, $dimensionValues);
if ($preset !== null) {
$preselectedDimensionPresets[$dimensionName] = $preset['identifier'];
}
}
foreach ($preselectedDimensionPresets as $dimensionName => $presetName) {
$presets = $this->contentDimensionsPresetSource->getAllowedDimensionPresetsAccordingToPreselection($dimensionName, $preselectedDimensionPresets);
$allowedPresets[$dimensionName] = array_keys($presets[$dimensionName]['presets']);
}
return $allowedPresets;
}