/** * exports all projects to a zip file - currently not working */ public static function exportProjects() { $zip = new ZipArchive(); $filename = $path = APPPATH . "resources/languageforge/semdomtrans/GoogleTranslateHarvester/exportedProjects.zip"; if ($zip->open($filename, ZipArchive::CREATE) !== TRUE) { exit("cannot open <{$filename}>\n"); } else { $projects = SemDomTransProjectCommands::getOpenSemdomProjects($userId); foreach ($projects->entries as $p) { $e = new SemDomXMLExporter($p, false, $p->isSourceLanguage && $p->languageIsoCode != 'en', !$p->isSourceLanguage); $e->run(); $zip->addFile($p->{$xmlFilePath}, basename($p->{$xmlFilePath})); } $zip->close(); } }
public function testSemDomImportExport_ImportExportPreserveXMLFile() { $environ = new SemDomMongoTestEnvironment(); $environ->clean(); $englishProject = $environ->getEnglishProjectAndCreateIfNecessary(); $exporter = new SemDomXMLExporter($englishProject, false, true, false); $exporter->run(); $sourcePath = $englishProject->xmlFilePath; $destinationPath = $englishProject->getAssetsFolderPath() . DIRECTORY_SEPARATOR . $englishProject->projectCode . 'Export.xml'; $sourceStr = trim(file_get_contents($sourcePath), "\n"); $sourceArr = explode("\n", $sourceStr); $destStr = trim(file_get_contents($destinationPath), "\n"); $destArr = explode("\n", $destStr); for ($i = 0; $i < count($destArr); $i++) { if ($i % 500 == 0) { $this->assertEquals($sourceArr[$i], $destArr[$i]); //$this->assertEqual(substr($sourceArr[$i], 0, -1), $destArr[$i]); } } $environ->clean(); }
<?php require_once '../scriptsConfig.php'; use Api\Library\Languageforge\Semdomtrans; use Api\Library\Languageforge\Semdomtrans\SemDomXMLExporter; use Api\Model\Languageforge\SemDomTransProjectModel; $lang = $argv[1]; $version = SemDomTransProjectModel::SEMDOM_VERSION; $testMode = false; $projectModel = new SemDomTransProjectModel(); $projectModel->readByProperties(array("languageIsoCode" => $lang, "semdomVersion" => $version)); $xml = simplexml_load_file($projectModel->xmlFilePath); $exporter = new SemDomXMLExporter($projectModel, $testMode, $argv[2] == "1", $argv[3] == "1"); $exporter->run();