mirror of
https://github.com/nextcloud/server.git
synced 2026-06-11 09:42:09 -04:00
fix(translation): Translate error messages on translations API
Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
parent
f95c76d82e
commit
e9cb759c97
1 changed files with 12 additions and 4 deletions
|
|
@ -29,6 +29,7 @@ namespace OC\Core\Controller;
|
|||
use InvalidArgumentException;
|
||||
use OCP\AppFramework\Http;
|
||||
use OCP\AppFramework\Http\DataResponse;
|
||||
use OCP\IL10N;
|
||||
use OCP\IRequest;
|
||||
use OCP\PreConditionNotMetException;
|
||||
use OCP\Translation\ITranslationManager;
|
||||
|
|
@ -36,11 +37,18 @@ use RuntimeException;
|
|||
|
||||
class TranslationApiController extends \OCP\AppFramework\OCSController {
|
||||
private ITranslationManager $translationManager;
|
||||
private IL10N $l;
|
||||
|
||||
public function __construct($appName, IRequest $request, ITranslationManager $translationManager) {
|
||||
public function __construct(
|
||||
string $appName,
|
||||
IRequest $request,
|
||||
ITranslationManager $translationManager,
|
||||
IL10N $l,
|
||||
) {
|
||||
parent::__construct($appName, $request);
|
||||
|
||||
$this->translationManager = $translationManager;
|
||||
$this->l = $l;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -62,11 +70,11 @@ class TranslationApiController extends \OCP\AppFramework\OCSController {
|
|||
'text' => $this->translationManager->translate($text, $fromLanguage, $toLanguage)
|
||||
]);
|
||||
} catch (PreConditionNotMetException) {
|
||||
return new DataResponse(['message' => 'No translation provider available'], Http::STATUS_PRECONDITION_FAILED);
|
||||
return new DataResponse(['message' => $this->l->t('No translation provider available')], Http::STATUS_PRECONDITION_FAILED);
|
||||
} catch (InvalidArgumentException) {
|
||||
return new DataResponse(['message' => 'Could not detect language', Http::STATUS_NOT_FOUND]);
|
||||
return new DataResponse(['message' => $this->l->t('Could not detect language'), Http::STATUS_NOT_FOUND]);
|
||||
} catch (RuntimeException) {
|
||||
return new DataResponse(['message' => 'Unable to translate', Http::STATUS_INTERNAL_SERVER_ERROR]);
|
||||
return new DataResponse(['message' => $this->l->t('Unable to translate'), Http::STATUS_INTERNAL_SERVER_ERROR]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue