2023-08-14 04:37:40 -04:00
|
|
|
<?php
|
2025-06-30 09:04:05 -04:00
|
|
|
|
2023-08-14 04:37:40 -04:00
|
|
|
/**
|
2024-06-02 09:26:54 -04:00
|
|
|
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
|
|
|
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
2023-08-14 04:37:40 -04:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
namespace OCA\Testing\Provider;
|
|
|
|
|
|
|
|
|
|
use OCP\Translation\ITranslationProvider;
|
|
|
|
|
use OCP\Translation\LanguageTuple;
|
|
|
|
|
|
|
|
|
|
class FakeTranslationProvider implements ITranslationProvider {
|
|
|
|
|
|
|
|
|
|
public function getName(): string {
|
|
|
|
|
return 'Fake translation';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getAvailableLanguages(): array {
|
|
|
|
|
return [
|
|
|
|
|
new LanguageTuple('de', 'German', 'en', 'English'),
|
|
|
|
|
new LanguageTuple('en', 'English', 'de', 'German'),
|
|
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function translate(?string $fromLanguage, string $toLanguage, string $text): string {
|
2026-04-10 09:49:57 -04:00
|
|
|
return $this->mb_strrev($text);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected function mb_strrev(string $str): string {
|
|
|
|
|
$r = '';
|
|
|
|
|
for ($i = mb_strlen($str); $i >= 0; $i--) {
|
|
|
|
|
$r .= mb_substr($str, $i, 1);
|
|
|
|
|
}
|
|
|
|
|
return $r;
|
2023-08-14 04:37:40 -04:00
|
|
|
}
|
|
|
|
|
}
|