hasTranslator() && $this->isTranslatorEnabled() && !isset($options['translator'])) { $options['translator'] = $this->getTranslator(); } if (!isset($options['text_domain'])) { $options['text_domain'] = $this->getTranslatorTextDomain(); } return parent::match($request, $pathOffset, $options); } /** * assemble(): defined by \Zend\Router\RouteInterface interface. * * @see \Zend\Router\RouteInterface::assemble() * @param array $params * @param array $options * @return mixed * @throws Exception\InvalidArgumentException * @throws Exception\RuntimeException */ public function assemble(array $params = [], array $options = []) { if ($this->hasTranslator() && $this->isTranslatorEnabled() && !isset($options['translator'])) { $options['translator'] = $this->getTranslator(); } if (!isset($options['text_domain'])) { $options['text_domain'] = $this->getTranslatorTextDomain(); } return parent::assemble($params, $options); } /** * setTranslator(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::setTranslator() * @param Translator $translator * @param string $textDomain * @return TreeRouteStack */ public function setTranslator(Translator $translator = null, $textDomain = null) { $this->translator = $translator; if ($textDomain !== null) { $this->setTranslatorTextDomain($textDomain); } return $this; } /** * getTranslator(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::getTranslator() * @return Translator */ public function getTranslator() { return $this->translator; } /** * hasTranslator(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::hasTranslator() * @return bool */ public function hasTranslator() { return $this->translator !== null; } /** * setTranslatorEnabled(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::setTranslatorEnabled() * @param bool $enabled * @return TreeRouteStack */ public function setTranslatorEnabled($enabled = true) { $this->translatorEnabled = $enabled; return $this; } /** * isTranslatorEnabled(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::isTranslatorEnabled() * @return bool */ public function isTranslatorEnabled() { return $this->translatorEnabled; } /** * setTranslatorTextDomain(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::setTranslatorTextDomain() * @param string $textDomain * @return self */ public function setTranslatorTextDomain($textDomain = 'default') { $this->translatorTextDomain = $textDomain; return $this; } /** * getTranslatorTextDomain(): defined by TranslatorAwareInterface. * * @see TranslatorAwareInterface::getTranslatorTextDomain() * @return string */ public function getTranslatorTextDomain() { return $this->translatorTextDomain; } }