PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / trunk
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress vtrunk
4.17.1 4.17.0 4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / third-party / vendor / symfony / translation / Dumper / FileDumper.php
wp-user-avatar / third-party / vendor / symfony / translation / Dumper Last commit date
CsvFileDumper.php 2 months ago DumperInterface.php 2 months ago FileDumper.php 2 months ago IcuResFileDumper.php 2 months ago IniFileDumper.php 2 months ago JsonFileDumper.php 2 months ago MoFileDumper.php 2 months ago PhpFileDumper.php 2 months ago PoFileDumper.php 2 months ago QtFileDumper.php 2 months ago XliffFileDumper.php 2 months ago YamlFileDumper.php 2 months ago
FileDumper.php
96 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 ProfilePressVendor\Symfony\Component\Translation\Dumper;
12
13 use ProfilePressVendor\Symfony\Component\Translation\Exception\InvalidArgumentException;
14 use ProfilePressVendor\Symfony\Component\Translation\Exception\RuntimeException;
15 use ProfilePressVendor\Symfony\Component\Translation\MessageCatalogue;
16 /**
17 * FileDumper is an implementation of DumperInterface that dump a message catalogue to file(s).
18 *
19 * Options:
20 * - path (mandatory): the directory where the files should be saved
21 *
22 * @author Michel Salib <michelsalib@hotmail.com>
23 */
24 abstract class FileDumper implements DumperInterface
25 {
26 /**
27 * A template for the relative paths to files.
28 *
29 * @var string
30 */
31 protected $relativePathTemplate = '%domain%.%locale%.%extension%';
32 /**
33 * Sets the template for the relative paths to files.
34 *
35 * @param string $relativePathTemplate A template for the relative paths to files
36 */
37 public function setRelativePathTemplate(string $relativePathTemplate)
38 {
39 $this->relativePathTemplate = $relativePathTemplate;
40 }
41 /**
42 * {@inheritdoc}
43 */
44 public function dump(MessageCatalogue $messages, array $options = [])
45 {
46 if (!\array_key_exists('path', $options)) {
47 throw new InvalidArgumentException('The file dumper needs a path option.');
48 }
49 // save a file for each domain
50 foreach ($messages->getDomains() as $domain) {
51 $fullpath = $options['path'] . '/' . $this->getRelativePath($domain, $messages->getLocale());
52 if (!file_exists($fullpath)) {
53 $directory = \dirname($fullpath);
54 if (!file_exists($directory) && !@mkdir($directory, 0777, \true)) {
55 throw new RuntimeException(sprintf('Unable to create directory "%s".', $directory));
56 }
57 }
58 $intlDomain = $domain . MessageCatalogue::INTL_DOMAIN_SUFFIX;
59 $intlMessages = $messages->all($intlDomain);
60 if ($intlMessages) {
61 $intlPath = $options['path'] . '/' . $this->getRelativePath($intlDomain, $messages->getLocale());
62 file_put_contents($intlPath, $this->formatCatalogue($messages, $intlDomain, $options));
63 $messages->replace([], $intlDomain);
64 try {
65 if ($messages->all($domain)) {
66 file_put_contents($fullpath, $this->formatCatalogue($messages, $domain, $options));
67 }
68 continue;
69 } finally {
70 $messages->replace($intlMessages, $intlDomain);
71 }
72 }
73 file_put_contents($fullpath, $this->formatCatalogue($messages, $domain, $options));
74 }
75 }
76 /**
77 * Transforms a domain of a message catalogue to its string representation.
78 *
79 * @return string
80 */
81 abstract public function formatCatalogue(MessageCatalogue $messages, string $domain, array $options = []);
82 /**
83 * Gets the file extension of the dumper.
84 *
85 * @return string
86 */
87 abstract protected function getExtension();
88 /**
89 * Gets the relative file path using the template.
90 */
91 private function getRelativePath(string $domain, string $locale): string
92 {
93 return strtr($this->relativePathTemplate, ['%domain%' => $domain, '%locale%' => $locale, '%extension%' => $this->getExtension()]);
94 }
95 }
96