public function setUp() { $command = new GenerateCharsetCommand(Translator::factory([])); $app = new Application(); $app->add($command); $this->commandTester = new CommandTester($command); }
/** * @param ServiceLocatorInterface $serviceLocator * @return MvcTranslator */ public function createService(ServiceLocatorInterface $serviceLocator) { // Assume that if a user has registered a service for the // TranslatorInterface, it must be valid if ($serviceLocator->has('Zend\\I18n\\Translator\\TranslatorInterface')) { return new MvcTranslator($serviceLocator->get('Zend\\I18n\\Translator\\TranslatorInterface')); } // If ext/intl is not loaded, return a dummy translator if (!extension_loaded('intl')) { return new MvcTranslator(new DummyTranslator()); } // Load a translator from configuration, if possible if ($serviceLocator->has('Config')) { $config = $serviceLocator->get('Config'); // 'translator' => false if (array_key_exists('translator', $config) && $config['translator'] === false) { return new MvcTranslator(new DummyTranslator()); } // 'translator' => array( ... translator options ... ) if (array_key_exists('translator', $config) && (is_array($config['translator']) && !empty($config['translator']) || $config['translator'] instanceof Traversable)) { $i18nTranslator = Translator::factory($config['translator']); $serviceLocator->setService('Zend\\I18n\\Translator\\TranslatorInterface', $i18nTranslator); return new MvcTranslator($i18nTranslator); } } // For BC purposes (pre-2.3.0), use the I18n Translator return new MvcTranslator(new Translator()); }
public function setUp() { $this->apiKeyService = $this->prophesize(ApiKeyService::class); $command = new ListKeysCommand($this->apiKeyService->reveal(), Translator::factory([])); $app = new Application(); $app->add($command); $this->commandTester = new CommandTester($command); }
public function setUp() { $this->visitsTracker = $this->prophesize(VisitsTrackerInterface::class); $command = new GetVisitsCommand($this->visitsTracker->reveal(), Translator::factory([])); $app = new Application(); $app->add($command); $this->commandTester = new CommandTester($command); }
public function setUp() { $this->urlShortener = $this->prophesize(UrlShortener::class); $command = new ResolveUrlCommand($this->urlShortener->reveal(), Translator::factory([])); $app = new Application(); $app->add($command); $this->commandTester = new CommandTester($command); }
public function testInvoke() { $sm = new ServiceManager(); $sm->setService(Translator::class, Translator::factory([])); $sm->setService(RouterInterface::class, $this->prophesize(RouterInterface::class)->reveal()); $instance = $this->factory->__invoke($sm); $this->assertInstanceOf(LanguageMiddleware::class, $instance); }
/** * Create a Translator instance. * * @param ContainerInterface $container * @param string $requestedName * @param null|array $options * @return Translator */ public function __invoke(ContainerInterface $container, $requestedName, array $options = null) { // Configure the translator $config = $container->get('config'); $trConfig = isset($config['translator']) ? $config['translator'] : []; $translator = Translator::factory($trConfig); return $translator; }
public function setUp() { $this->urlShortener = $this->prophesize(UrlShortener::class); $command = new GenerateShortcodeCommand($this->urlShortener->reveal(), Translator::factory([]), ['schema' => 'http', 'hostname' => 'foo.com']); $app = new Application(); $app->add($command); $this->commandTester = new CommandTester($command); }
public function createService(ServiceLocatorInterface $serviceLocator) { // Configure the translator $config = $serviceLocator->get('Configuration'); $trConfig = isset($config['translator']) ? $config['translator'] : array(); $translator = Translator::factory($trConfig); return $translator; }
public function setUp() { $this->factory = new RendererFactory(); $this->container = $this->prophesize(ContainerInterface::class); $this->container->get('translator')->willReturn(Translator::factory([])); $this->container->get('config')->willReturn(['navigation' => [], 'recaptcha' => []]); $this->container->get(RouteAssembler::class)->willReturn($this->prophesize(RouteAssembler::class)->reveal()); }
public function setUp() { $this->visitService = $this->prophesize(VisitService::class); $this->ipResolver = $this->prophesize(IpLocationResolver::class); $command = new ProcessVisitsCommand($this->visitService->reveal(), $this->ipResolver->reveal(), Translator::factory([])); $app = new Application(); $app->add($command); $this->commandTester = new CommandTester($command); }
public function setUp() { $routeAssemblerProphezy = $this->prophesize(RouteAssembler::class); $routeAssemblerProphezy->assembleUrl('home', true)->willReturn('/foo/bar'); $routeAssemblerProphezy->assembleUrl(null, ['lang' => 'es'])->willReturn('/es'); $routeAssemblerProphezy->assembleUrl(null, ['lang' => 'en'])->willReturn('/en'); $routeAssemblerProphezy->getCurrentRouteResult()->willReturn(RouteResult::fromRouteMatch('home', 'HelloWorld', [])); $this->extension = new NavigationExtension(Translator::factory([]), $routeAssemblerProphezy->reveal(), ['menu' => [['route' => 'home', 'icon' => 'house', 'label' => 'Home'], ['uri' => 'http://foo.com', 'target' => true, 'label' => 'Blog', 'icon' => 'book']], 'lang_menu' => [['label' => 'Español', 'class' => 'es', 'params' => ['lang' => 'es']], ['label' => 'English', 'class' => 'en', 'params' => ['lang' => 'en']]]]); }
public function setUp() { $this->shortUrlService = $this->prophesize(ShortUrlServiceInterface::class); $app = new Application(); $command = new ListShortcodesCommand($this->shortUrlService->reveal(), Translator::factory([])); $app->add($command); $this->questionHelper = $command->getHelper('question'); $this->commandTester = new CommandTester($command); }
public function setUp() { $this->request = new ServerRequest(); $router = $this->prophesize(RouterInterface::class); $router->match($this->request)->willReturn(RouteResult::fromRouteMatch('home', function ($req, $resp) { return $resp; }, ['lang' => 'es'])); $this->translator = Translator::factory(['locale' => 'en']); $this->middleware = new LanguageMiddleware($this->translator, $router->reveal()); }
public function setUp() { $this->module = new Module(); $this->app = $this->getMockBuilder('Zend\\Mvc\\Application')->disableOriginalConstructor()->getMock(); $sm = new ServiceManager(new Config(['services' => ['translator' => Translator::factory(['locale' => 'id_ID'])]])); $this->app->expects($this->any())->method('getServiceManager')->willReturn($sm); $em = new EventManager(); $em->setSharedManager(new SharedEventManager()); $this->app->expects($this->any())->method('getEventManager')->willReturn($em); }
public function setUp() { $this->factory = new RendererFactory(); $this->container = $this->prophesize(ContainerInterface::class); $this->container->get('translator')->willReturn(Translator::factory([])); $this->container->get('config')->willReturn(['navigation' => [], 'recaptcha' => []]); $this->container->get('Acelaya\\Website\\FeedCache')->willReturn(new ArrayCache()); $this->container->get(BlogOptions::class)->willReturn(new BlogOptions()); $this->container->get(RouteAssembler::class)->willReturn($this->prophesize(RouteAssembler::class)->reveal()); }
public function createService(ServiceLocatorInterface $serviceLocator) { // Configure the translator $config = $serviceLocator->get('Configuration'); $translator = Translator::factory($config['translator']); // Provide translator to the view helpers $serviceLocator->get('ViewHelperManager')->get('translate')->setTranslator($translator); $serviceLocator->get('ViewHelperManager')->get('translateplural')->setTranslator($translator); return $translator; }
public function setUp() { $this->module = new Module(); $app = $this->prophesize('Zend\\Mvc\\Application'); $sm = new ServiceManager(new Config(['services' => ['translator' => Translator::factory(['locale' => 'id_ID'])]])); $app->getServiceManager()->willReturn($sm); $em = new EventManager(); $em->setSharedManager(new SharedEventManager()); $app->getEventManager()->willReturn($em); $this->app = $app->reveal(); }
/** * @return \Zend\Mvc\I18n\Translator */ public function createService(ServiceLocatorInterface $serviceLocator) { // Configure the translator $config = $serviceLocator->get('Config'); $translator = Translator::factory($config['translator']); $mvcTranslator = new MvcTranslator($translator); \Locale::setDefault($translator->getLocale()); // For translated validation messages AbstractValidator::setDefaultTranslator($mvcTranslator, 'forms'); return $mvcTranslator; }
/** * @return \Zend\Mvc\I18n\Translator */ public function createService(ServiceLocatorInterface $serviceLocator) { // Configure the translator $config = $serviceLocator->get('Config'); $translator = Translator::factory($config['translator']); if (APPLICATION_ENV !== 'development') { // Use APC cache for translations on production environment $translator->setCache($serviceLocator->get('core.cache.translate')); } $mvcTranslator = new MvcTranslator($translator); \Locale::setDefault($translator->getLocale()); AbstractValidator::setDefaultTranslator($mvcTranslator); return $mvcTranslator; }
public function createService(ServiceLocatorInterface $serviceLocator) { //site locale could be overwrite by user, so here use ModuleManager to get changed config $mm = $serviceLocator->get('ModuleManager'); $config = $mm->getEvent()->getParam('configListener')->getMergedConfig()->toArray(); $translator = Translator::factory($config['translator']); //NOTE: Zf2 i18n require Locale class installed. Here could invoid no install Locale if (isset($config['translator']['locale'])) { $translator->setFallbackLocale($config['translator']['locale']); } $validatorTranslator = \Zend\I18n\Translator\Translator::factory(array('locale' => $translator->getLocale(), 'translation_file_patterns' => array('zf' => array('type' => 'PhpArray', 'base_dir' => EVA_LIB_PATH . '/Zend/resources/languages/', 'pattern' => '%s/Zend_Validate.php')))); \Zend\Validator\AbstractValidator::setDefaultTranslator($validatorTranslator); return $translator; }
protected function initTranslator(MvcEvent $event) { $serviceManager = $event->getApplication()->getServiceManager(); // Zend\Session\Container $session = new Container('language'); $config = $event->getApplication()->getServiceManager()->get('Configuration'); $localesConfig = $config['locales']; $locales = $localesConfig['list']; $translator = $serviceManager->get('translator'); $translator = \Zend\I18n\Translator\Translator::factory($locales); var_dump($session->language); if ($session['language'] != 'uk_UA') { //if session doesn't have zh_CN then set it as english $translator->setLocale($session->language)->setFallbackLocale('en_US'); } }
public function createService(ServiceLocatorInterface $serviceLocator) { $config = $serviceLocator->get('config'); // Get the list of modules /** @var \Zend\ModuleManager\ModuleManager $modules */ $modules = $serviceLocator->get('modulemanager'); $modulesName = $modules->getModules(); $files = []; foreach ($modulesName as $module) { if (isset($config[strtolower($module)]['language_dir'])) { $file = $config[strtolower($module)]['language_dir'] . '/' . $locale . '.php'; if (file_exists($file)) { $files[] = ['type' => 'phparray', 'filename' => $file, 'text_domain' => $module, 'locale' => $locale]; } } } return Translator::factory(['translation_files' => $files]); }
public static function factory($options) { $translator = parent::factory($options); $options = $options['scaffold']; if (isset($options['enable']) && $options['enable'] && isset($options['path']) && $options['path']) { $translator->scaffoldPath = $path = $options['path']; if (isset($options['level']) && isset($_SERVER["REQUEST_URI"])) { $pathArray = explode('/', dirname($_SERVER["REQUEST_URI"])); $pathArray = array_splice($pathArray, 1, (int) $options['level']); $translator->scaffoldFile = $file = $translator->scaffoldPath . DIRECTORY_SEPARATOR . implode('_', $pathArray) . '.csv'; } else { $translator->scaffoldFile = $file = $translator->scaffoldPath . DIRECTORY_SEPARATOR . 'main.csv'; } if (!is_writable($path)) { return $translator; } $translator->scaffold = true; } return $translator; }
public function createService(ServiceLocatorInterface $serviceLocator) { $config = $serviceLocator->get('config'); $translator = Translator::factory($config['translator']); /** * Work-around for the translator loader plugin manager not having a config * key that it looks for. */ foreach ($config['translator_plugins']['factories'] as $name => &$factory) { $pluginManager = $translator->getPluginManager(); $pluginManager->setServiceLocator($serviceLocator); $pluginManager->setFactory($name, $factory); } $translator->setLocale(\Locale::getDefault()); /* Register listener if configured */ $translationListener = $config['RcmI18n']['translationListener']; if (!empty($translationListener) && $serviceLocator->has($translationListener)) { $listener = $serviceLocator->get($translationListener); $event = $translator->getEventManager(); $listener->attach($event); } return new \Zend\Mvc\I18n\Translator($translator); }
/** * Instantiate a translator * * @param array|Traversable $options * @return Translator * @throws Exception\InvalidArgumentException */ public static function factory($options) { if ($options instanceof Traversable) { $options = ArrayUtils::iteratorToArray($options); } /* @var $translator Translator */ $translator = parent::factory($options); // file my patterns if (isset($options['translation_file_my_patterns'])) { if (!is_array($options['translation_file_my_patterns'])) { throw new Exception\InvalidArgumentException('"translation_file_my_patterns" should be an array'); } $requiredKeys = array('type', 'base_dir', 'pattern'); foreach ($options['translation_file_my_patterns'] as $pattern) { foreach ($requiredKeys as $key) { if (!isset($pattern[$key])) { throw new Exception\InvalidArgumentException("'{$key}' is missing for translation my pattern options"); } } $translator->addMyTranslationFilePattern($pattern['type'], $pattern['base_dir'], $pattern['pattern']); } } return $translator; }
public function setUp() { $this->visitsTracker = $this->prophesize(VisitsTracker::class); $this->action = new GetVisitsAction($this->visitsTracker->reveal(), Translator::factory([])); }
public function testFactoryCreatesTranslatorWithCache() { $translator = Translator::factory(array( 'locale' => 'de_DE', 'patterns' => array( array( 'type' => 'phparray', 'base_dir' => $this->testFilesDir . '/testarray', 'pattern' => 'translation-%s.php' ) ), 'cache' => array( 'adapter' => 'memory' ) )); $this->assertInstanceOf('Zend\I18n\Translator\Translator', $translator); $this->assertInstanceOf('Zend\Cache\Storage\StorageInterface', $translator->getCache()); }
public function setUp() { $this->service = $this->prophesize(ShortUrlService::class); $this->action = new ListShortcodesAction($this->service->reveal(), Translator::factory([])); }
public function testEnableEventMangerViaFactory() { $translator = Translator::factory(array('event_manager_enabled' => true)); $this->assertTrue($translator->isEventManagerEnabled()); $translator = Translator::factory(array()); $this->assertFalse($translator->isEventManagerEnabled()); }