public function onFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { switch ($args->getAction()) { case MOXMAN_Vfs_FileActionEventArgs::DELETE: case MOXMAN_Vfs_FileActionEventArgs::COPY: case MOXMAN_Vfs_FileActionEventArgs::ADD: MOXMAN::getUserStorage()->put("quota.size", max(0, $this->currentSize)); break; } }
public function onFileAction(MOXMAN_Core_FileActionEventArgs $args) { switch ($args->getAction()) { case MOXMAN_Core_FileActionEventArgs::LIST_FILES: // Recalculate quota size when listing files $dirs = MOXMAN::getUserStorage()->get("quota.dirs", new stdClass()); $this->recalcQuota($args->getFile(), $dirs); MOXMAN::getUserStorage()->put("quota.dirs", $dirs); break; } }
public function listFilesFiltered(MOXMAN_Vfs_IFileFilter $filter) { $entries = MOXMAN_Util_Json::decode(MOXMAN::getUserStorage()->get("uploaded.files", "[]")); $files = array(); foreach ($entries as $entry) { $file = new MOXMAN_Uploaded_File($this->fileSystem, $entry->path, $entry); if ($filter->accept($file) == MOXMAN_Vfs_IFileFilter::ACCEPTED) { $files[] = $file; } } return $files; }
public function listFilesFiltered(MOXMAN_Vfs_IFileFilter $filter) { $files = array(); if ($this->isDirectory()) { $fileSystem = $this->getFileSystem(); $entries = MOXMAN_Util_Json::decode(MOXMAN::getUserStorage()->get("uploaded.files", "[]")); foreach ($entries as $entry) { $file = new MOXMAN_Favorites_File($fileSystem, $entry->path, $entry); if ($filter->accept($file)) { $files[] = $file; } } } return new MOXMAN_Vfs_FileList($files); }
public function remove($params) { if (isset($params->paths) && is_array($params->paths)) { $paths = $params->paths; $files = MOXMAN_Util_Json::decode(MOXMAN::getUserStorage()->get("uploaded.files", "[]")); // Remove existing paths for ($i = 0; $i < count($files); $i++) { foreach ($paths as $path) { if ($files[$i]->path == $path) { array_splice($files, $i, 1); } } } MOXMAN::getUserStorage()->put("uploaded.files", MOXMAN_Util_Json::encode($files)); } return true; }
public function listFilesFiltered(MOXMAN_Vfs_IFileFilter $filter) { $files = array(); if ($this->isDirectory()) { $fileSystem = $this->getFileSystem(); $entries = MOXMAN_Util_Json::decode(MOXMAN::getUserStorage()->get("history.files", "[]")); $index = 0; foreach ($entries as $entry) { $file = new MOXMAN_History_File($fileSystem, $entry->path, $entry); if ($filter->accept($file)) { $entry->name = basename($entry->path) . "_\$\$[" . $index++ . "]"; $files[] = $file; } } } return new MOXMAN_Vfs_FileList($files); }
public function remove($params) { if (isset($params->paths) && is_array($params->paths)) { $paths = $params->paths; $files = MOXMAN_Util_Json::decode(MOXMAN::getUserStorage()->get("favorites.files", "[]")); foreach ($paths as $path) { for ($i = count($files) - 1; $i >= 0; $i--) { if ($files[$i]->path == $path) { array_splice($files, $i, 1); $i--; } } } MOXMAN::getUserStorage()->put("favorites.files", MOXMAN_Util_Json::encode($files)); } return true; }
public function remove($params) { if (MOXMAN::getConfig()->get('general.demo')) { throw new MOXMAN_Exception("This action is restricted in demo mode.", MOXMAN_Exception::DEMO_MODE); } if (isset($params->paths) && is_array($params->paths)) { $paths = $params->paths; $files = MOXMAN_Util_Json::decode(MOXMAN::getUserStorage()->get("history.files", "[]")); for ($i = count($files) - 1; $i >= 0; $i--) { foreach ($paths as $path) { if ($files[$i]->path == $path) { array_splice($files, $i, 1); $i--; } } } MOXMAN::getUserStorage()->put("history.files", MOXMAN_Util_Json::encode($files)); } return true; }