/** * check that inner zip exists, and unpack it if do */ private static function updatePlugin_checkUnpackInnerZip($pathUpdate, $zipFilename) { $arrFiles = UniteFunctionsUG::getFileList($pathUpdate); if (empty($arrFiles)) { return false; } //get inner file $filenameInner = null; foreach ($arrFiles as $innerFile) { if ($innerFile != $zipFilename) { $filenameInner = $innerFile; } } if (empty($filenameInner)) { return false; } //check if internal file is zip $info = pathinfo($filenameInner); $ext = UniteFunctionsUG::getVal($info, "extension"); if ($ext != "zip") { return false; } $filepathInner = $pathUpdate . $filenameInner; if (file_exists($filepathInner) == false) { return false; } dmp("detected inner zip file. unpacking..."); //check if zip exists $zip = new UniteZipUG(); if (function_exists("unzip_file") == true) { WP_Filesystem(); $response = unzip_file($filepathInner, $pathUpdate); } else { $zip->extract($filepathInner, $pathUpdate); } }