Ejemplo n.º 1
0
 /**
  * @see Description in abstract base class
  */
 public function fromArray(array $data)
 {
     $resultData = array();
     $resultTmx = new Util_TmxFile();
     foreach ($data as $translationUnit => $variants) {
         foreach ($variants as $language => $contents) {
             if (is_array($contents) && isset($contents['filename']) && isset($contents['contents'])) {
                 $filePath = $this->contentBasepath . DIRECTORY_SEPARATOR . $contents['filename'];
                 $resultData[$filePath] = $contents['contents'];
                 $contents = $contents['filename'];
             }
             $resultTmx->setVariantSegment($translationUnit, $language, $contents);
         }
     }
     $this->setContent($resultData);
     $this->setTranslation($resultTmx->toArray());
 }
Ejemplo n.º 2
0
 /**
  * @see Description in abstract base class
  */
 public function fromArray(array $data)
 {
     $resultData = array();
     $resultTmx = new Util_TmxFile();
     foreach ($data as $language => $fields) {
         foreach ($fields as $key => $val) {
             switch ($key) {
                 case 'file':
                     if (!is_array($val) || !isset($val['filename']) || !isset($val['contents'])) {
                         throw new Setup_Model_Exception('Invalid data structure');
                     }
                     $filePath = $this->contentBasepath . DIRECTORY_SEPARATOR . $val['filename'];
                     $resultData[$filePath] = $val['contents'];
                     break;
                 case 'key':
                     foreach ($val as $translationUnit => $variant) {
                         $resultTmx->setVariantSegment($translationUnit, $language, $variant);
                     }
                     break;
                 default:
                     throw new Setup_Model_Exception('Failed loading array. Invalid data structure.');
             }
         }
     }
     $this->setContent($resultData);
     $this->setTranslation($resultTmx->toArray());
 }