protected function matchPath(SPIURLAlias $spiUrlAlias, $path, $languageCode)
{
$matchedPathElements = array();
$matchedPathLanguageCodes = array();
$pathElements = explode('/', $path);
$pathLevels = count($spiUrlAlias->pathData);
foreach ($pathElements as $level => $pathElement) {
if ($level === $pathLevels - 1) {
$matchedLanguageCode = $this->selectAliasLanguageCode($spiUrlAlias, $languageCode, $this->settings['showAllTranslations'], $this->settings['prioritizedLanguageList']);
} else {
$matchedLanguageCode = $this->matchLanguageCode($spiUrlAlias->pathData[$level], $pathElement);
}
if ($matchedLanguageCode === false) {
return array(false, false);
}
$matchedPathLanguageCodes[] = $matchedLanguageCode;
$matchedPathElements[] = $spiUrlAlias->pathData[$level]['translations'][$matchedLanguageCode];
}
return array(implode('/', $matchedPathElements), $matchedPathLanguageCodes);
}