use Cubist\Util\Files\Files;
use Cubist\Util\Files\VirtualDirectory;
use Cubist\Util\PHP;
+use Cubist\Util\Zip;
use Exception;
use Fluidbook\Tools\Jobs\ProcessFile;
use Fluidbook\Tools\Jobs\ProcessPage;
use Illuminate\Queue\SerializesModels;
use JsonException;
use stdClass;
+use ZipStream\File;
class Compiler implements ShouldQueue, ShouldBeUnique
{
}
}
+ public function unzipFile($file, $moveAssets = false, $baseDir = null)
+ {
+ $fdir = is_null($baseDir) ? 'data/links/' . str_replace('.', '_', $file) : $baseDir;
+
+ $tmp = Files::tmpdir();
+ $dir = $tmp . '/' . $fdir;
+ Files::mkdir($dir);
+
+ Zip::extract($this->wdir . '/' . $file, $dir);
+
+ if ($moveAssets) {
+ `mv $dir/Assets/* $dir`;
+ rmdir($dir . '/Assets');
+ }
+
+ return array('dir' => $dir, 'fdir' => $fdir);
+ }
+
protected function compilePageNumbers()
{