/**
  * Get translation data
  *
  * @param string $themePath
  * @return array
  * @throws \Exception
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 public function getData($themePath)
 {
     $areaCode = $this->appState->getAreaCode();
     $files = array_merge($this->filesUtility->getJsFiles('base', $themePath), $this->filesUtility->getJsFiles($areaCode, $themePath), $this->filesUtility->getStaticHtmlFiles('base', $themePath), $this->filesUtility->getStaticHtmlFiles($areaCode, $themePath));
     $dictionary = [];
     foreach ($files as $filePath) {
         /** @var \Magento\Framework\Filesystem\File\Read $read */
         $read = $this->fileReadFactory->create($filePath[0], \Magento\Framework\Filesystem\DriverPool::FILE);
         $content = $read->readAll();
         foreach ($this->getPhrases($content) as $phrase) {
             $translatedPhrase = $this->translate->render([$phrase], []);
             if ($phrase != $translatedPhrase) {
                 $dictionary[$phrase] = $translatedPhrase;
             }
         }
     }
     return $dictionary;
 }
Beispiel #2
0
 /**
  * Get translation data
  *
  * @param string $themePath
  * @return array
  * @throws \Exception
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 public function getData($themePath)
 {
     $dictionary = [];
     $areaCode = $this->appState->getAreaCode();
     $files = $this->filesUtility->getJsFiles($areaCode, $themePath);
     $staticHtmlFiles = $this->filesUtility->getStaticHtmlFiles($areaCode, $themePath);
     if (is_array($staticHtmlFiles)) {
         foreach ($staticHtmlFiles as $staticFile) {
             $files[] = $staticFile;
         }
     }
     foreach ($files as $filePath) {
         $content = $this->rootDirectory->readFile($this->rootDirectory->getRelativePath($filePath[0]));
         foreach ($this->getPhrases($content) as $phrase) {
             $translatedPhrase = (string) __($phrase);
             if ($phrase != $translatedPhrase) {
                 $dictionary[$phrase] = $translatedPhrase;
             }
         }
     }
     return $dictionary;
 }