Add a check for the pipe character

Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
Joas Schilling 2021-03-30 20:19:41 +02:00
parent 157147cb8e
commit a4c6749b02
No known key found for this signature in database
GPG Key ID: 7076EA9751AACDDA
2 changed files with 11 additions and 0 deletions

View File

@ -48,6 +48,11 @@ foreach ($directories as $dir) {
$content = file_get_contents($file->getPathname()); $content = file_get_contents($file->getPathname());
$json = json_decode($content, true); $json = json_decode($content, true);
$translations = json_encode($json['translations']);
if (strpos($content, '|') !== false) {
$errors[] = $file->getPathname() . "\n" . ' ' . 'Contains a | in the translations' . "\n";
}
if (json_last_error() !== JSON_ERROR_NONE) { if (json_last_error() !== JSON_ERROR_NONE) {
$errors[] = $file->getPathname() . "\n" . ' ' . json_last_error_msg() . "\n"; $errors[] = $file->getPathname() . "\n" . ' ' . json_last_error_msg() . "\n";
} else { } else {

View File

@ -59,6 +59,12 @@ class L10NString implements \JsonSerializable {
public function __toString(): string { public function __toString(): string {
$translations = $this->l10n->getTranslations(); $translations = $this->l10n->getTranslations();
$pipeCheck = implode('', $translations[$this->text]);
if (strpos($pipeCheck, '|') !== false) {
return 'Can not use pipe character in translations';
}
$identityTranslator = $this->l10n->getIdentityTranslator(); $identityTranslator = $this->l10n->getIdentityTranslator();
$parameters = $this->parameters; $parameters = $this->parameters;