PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.5
Independent Analytics – WordPress Analytics Plugin v2.15.5
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / vendor / symfony / translation / Reader / TranslationReader.php
independent-analytics / vendor / symfony / translation / Reader Last commit date
TranslationReader.php 1 month ago TranslationReaderInterface.php 2 years ago
TranslationReader.php
59 lines
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 namespace IAWPSCOPED\Symfony\Component\Translation\Reader;
12
13 use IAWPSCOPED\Symfony\Component\Finder\Finder;
14 use IAWPSCOPED\Symfony\Component\Translation\Loader\LoaderInterface;
15 use IAWPSCOPED\Symfony\Component\Translation\MessageCatalogue;
16 /**
17 * TranslationReader reads translation messages from translation files.
18 *
19 * @author Michel Salib <michelsalib@hotmail.com>
20 * @internal
21 */
22 class TranslationReader implements TranslationReaderInterface
23 {
24 /**
25 * Loaders used for import.
26 *
27 * @var array<string, LoaderInterface>
28 */
29 private array $loaders = [];
30 /**
31 * Adds a loader to the translation extractor.
32 *
33 * @param string $format The format of the loader
34 */
35 public function addLoader(string $format, LoaderInterface $loader)
36 {
37 $this->loaders[$format] = $loader;
38 }
39 /**
40 * {@inheritdoc}
41 */
42 public function read(string $directory, MessageCatalogue $catalogue)
43 {
44 if (!\is_dir($directory)) {
45 return;
46 }
47 foreach ($this->loaders as $format => $loader) {
48 // load any existing translation files
49 $finder = new Finder();
50 $extension = $catalogue->getLocale() . '.' . $format;
51 $files = $finder->files()->name('*.' . $extension)->in($directory);
52 foreach ($files as $file) {
53 $domain = \substr($file->getFilename(), 0, -1 * \strlen($extension) - 1);
54 $catalogue->addCatalogue($loader->load($file->getPathname(), $catalogue->getLocale(), $domain));
55 }
56 }
57 }
58 }
59