public function onFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { if ($args->isAction("insert")) { $this->add($args->getFile()->getPublicPath()); } if ($args->isAction("delete")) { $this->remove((object) array("paths" => array($args->getFile()->getPublicPath()))); } }
public function onFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { if ($args->getFile()->isDirectory()) { return; } if ($args->isAction("add") && (!isset($args->getData()->thumb) || !$args->getData()->thumb)) { $this->add($args->getFile()->getPublicPath()); } if ($args->isAction("delete")) { $this->remove((object) array("paths" => array($args->getFile()->getPublicPath()))); } }
public function onFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { $logger = MOXMAN::getLogger(); if ($logger) { if ($args->getTargetFile()) { // Log copy/move operations these have a target file $logger->debug("Action: " . $args->getAction(), "Path: " . $args->getFile()->getPath(), "TargetPath: " . $args->getTargetFile()->getPath()); } else { // Log single file operations $logger->debug("Action: " . $args->getAction(), "Path: " . $args->getFile()->getPath()); } } }
public function onBeforeFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { switch ($args->getAction()) { case MOXMAN_Vfs_FileActionEventArgs::DELETE: $file = $args->getFile(); $maxSize = $this->parseSize($file->getConfig()->get("quota.max_size", 0)); if ($maxSize > 0) { $this->currentSize = MOXMAN::getUserStorage()->get("quota.size", 0); $this->currentSize = max(0, $this->currentSize - $file->getSize()); if (MOXMAN::getLogger()) { MOXMAN::getLogger()->debug("[quota] Removed: " . $file->getPublicPath() . " (" . $this->formatSize($file->getSize()) . ")."); } } break; case MOXMAN_Vfs_FileActionEventArgs::COPY: case MOXMAN_Vfs_FileActionEventArgs::ADD: if (!isset($args->getData()->thumb)) { $file = $args->getFile(); $targetFile = $args->getTargetFile(); if (!$file) { return; } $publicPath = $targetFile ? $targetFile->getPublicPath() : $file->getPublicPath(); $maxSize = $this->parseSize($file->getConfig()->get("quota.max_size", 0)); if ($maxSize === 0) { return; } $fileSize = 0; // Get size of source directory in copy operation if ($args->getAction() == MOXMAN_Vfs_FileActionEventArgs::COPY && $file->isDirectory()) { $fileSize = $this->getDirectorySize($file); } else { if (isset($args->getData()->fileSize)) { $fileSize = $args->getData()->fileSize; } } $this->currentSize = MOXMAN::getUserStorage()->get("quota.size", 0); if ($this->currentSize + $fileSize > $maxSize) { throw new MOXMAN_Exception("Quota exceeded when adding file: " . $publicPath . " (" . $this->formatSize($this->currentSize + $fileSize) . " > " . $this->formatSize($maxSize) . ")."); } $this->currentSize += $fileSize; if (MOXMAN::getLogger()) { MOXMAN::getLogger()->debug("[quota] Added: " . $file->getPublicPath() . " (" . $this->formatSize($fileSize) . ")."); } } break; } }
public function onBeforeFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { switch ($args->getAction()) { case MOXMAN_Vfs_FileActionEventArgs::DELETE: if (!isset($args->getData()->format) && !isset($args->getData()->thumb)) { $this->removeFormat($args->getFile()); } break; } }
public function onBeforeFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { switch ($args->getAction()) { case MOXMAN_Vfs_FileActionEventArgs::ADD: $args->setFile($this->renameFile($args->getFile())); break; case MOXMAN_Vfs_FileActionEventArgs::MOVE: $args->setTargetFile($this->renameFile($args->getTargetFile())); break; } }
/** * Event handler function. Gets executed when a file action event occurs. * * @param MOXMAN_Vfs_FileActionEventArgs $args File action event arguments. */ public function onFileAction(MOXMAN_Vfs_FileActionEventArgs $args) { if (isset($args->getData()->thumb)) { return; } switch ($args->getAction()) { case MOXMAN_Vfs_FileActionEventArgs::DELETE: $this->deleteThumbnail($args->getFile()); break; case MOXMAN_Vfs_FileActionEventArgs::COPY: $this->copyThumbnail($args->getFile(), $args->getTargetFile()); break; case MOXMAN_Vfs_FileActionEventArgs::MOVE: $this->moveThumbnail($args->getFile(), $args->getTargetFile()); break; } }