* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ namespace PrestaShopBundle\Controller\Api; use Exception; use Symfony\Component\HttpFoundation\JsonResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; class I18nController extends ApiController { /** * Show translation for page-app build with vue-js. * * No access restrictions because it is required for VueJs translations * * @param Request $request * * @return JsonResponse */ public function listTranslationAction(Request $request) { try { $page = $request->attributes->get('page'); try { $translationClass = $this->container->get('prestashop.translation.api.' . $page); } catch (Exception $exception) { throw new BadRequestHttpException($exception->getMessage()); } } catch (BadRequestHttpException $exception) { return $this->handleException($exception); } return $this->jsonResponse($translationClass->getFormattedTranslations(), $request); } }