deleteFolder() public static method

Delete a folder using the current Gollem session settings.
public static deleteFolder ( string $dir, string $name )
$dir string The subdirectory name.
$name string The folder name to delete.
Esempio n. 1
0
 /**
  * Removes a file or folder from the VFS
  *
  * @param string $path  Path of file or folder to delete
  */
 public function path_delete($path)
 {
     // Clean off the irrelevant portions of the path
     $path = Gollem::stripAPIPath($path);
     if ($path == '') {
         // We are at the root of gollem.  Any writes at this level are
         // disallowed.
         throw new Gollem_Exception(_("The application folder can not be deleted."));
     }
     $backend_key = $this->_getBackend($path);
     throw new Gollem_Exception('Permssion checks not implemented yet.');
     // Trim off the backend_key (and '/') to get the VFS relative path
     $fullpath = substr($path, strlen($backend_key) + 1);
     // Get the VFS-standard $name,$path pair
     list($name, $path) = Gollem::getVFSPath($fullpath);
     // Apparently Gollem::verifyDir() (called by deleteF* next) needs to
     // see a path with a leading '/'
     $path = $backends[$backend_key]['root'] . $path;
     $GLOBALS['injector']->getInstance('Gollem_Vfs')->isFolder($path, $name) ? Gollem::deleteFolder($path, $name) : Gollem::deleteFile($path, $name);
 }
Esempio n. 2
0
 case 'chmod_modify':
 case 'delete_items':
     if ($delete_perms && is_array($vars->items) && count($vars->items)) {
         foreach ($vars->items as $item) {
             if ($vars->actionID == 'chmod_modify' && $vars->chmod) {
                 try {
                     Gollem::changePermissions(Gollem::$backend['dir'], $item, $vars->chmod);
                     Gollem::expireCache($old_dir);
                     $notification->push(_("Chmod done: ") . $item, 'horde.success');
                 } catch (Gollem_Exception $e) {
                     $notification->push(sprintf(_("Cannot chmod %s: %s"), $item, $e->getMessage()), 'horde.error');
                 }
             } elseif ($vars->actionID == 'delete_items') {
                 if ($gollem_vfs->isFolder($old_dir, $item)) {
                     try {
                         Gollem::deleteFolder($old_dir, $item);
                         Gollem::expireCache($old_dir);
                         $notification->push(_("Folder removed: ") . $item, 'horde.success');
                     } catch (Gollem_Exception $e) {
                         $notification->push(sprintf(_("Unable to delete folder %s: %s"), $item, $e->getMessage()), 'horde.error');
                     }
                 } else {
                     try {
                         Gollem::deleteFile($old_dir, $item);
                         Gollem::expireCache($old_dir);
                         $notification->push(_("File deleted: ") . $item, 'horde.success');
                     } catch (Gollem_Exception $e) {
                         $notification->push(sprintf(_("Unable to delete file %s: %s"), $item, $e->getMessage()), 'horde.error');
                     }
                 }
             }