function save($package)
{
$Filter = new Filter();
$name = $this->getName($Filter->get($package, 'name', null));
if ($Filter->get($package, 'error', false)) {
// An HTTP error occurred
return false;
} else {
if (empty($name)) {
// An empty file name was posted
return false;
} else {
if ($this->exists($name)) {
return false;
}
}
}
$Uploader = new Uploader(array("application/zip"), array(SB_TMP_DIR));
list($result, $tmpfile) = $Uploader->upload($package, SB_TMP_DIR);
if (intval($result) != 1) {
// The file was not uploaded
return false;
}
// handle the file move to the managers dir
if (!FileSystem::make_dir($this->directory . $name)) {
// The target directory could not be created
return false;
}
return $this->unzip($tmpfile, $this->directory . $name);
}