public function processInstallPackageFtp($package, $file, $configObj, $ftp)
{
$ftpDir = $ftp->getcwd();
$contents = $package->getContents();
$arc = $this->getArchiver();
$target = dirname($file) . DS . $package->getReleaseFilename();
@mkdir($target, 0777, true);
$mode = $configObj->global_dir_mode;
$tar = $arc->unpack($file, $target);
$modeFile = $configObj->global_file_mode;
$modeDir = $configObj->global_dir_mode;
foreach ($contents as $file) {
$fileName = basename($file);
$filePath = $this->convertFtpPath(dirname($file));
$source = $tar . DS . $file;
if (file_exists($source) && is_file($source)) {
$args = array(ltrim($file, "/"), $source);
if ($modeDir) {
$args[] = $modeDir;
}
call_user_func_array(array($ftp, 'upload'), $args);
}
}
$ftp->chdir($ftpDir);
Mage_System_Dirs::rm(array("-r", $target));
}