public static function ClearCache($parameters) { if (is_array($parameters)) { if (\OC\Files\Filesystem::is_dir($parameters['path'] . '/') || basename(getenv('REQUEST_URI')) == 'newfolder.php') { $cache = new OC\Cache\UserCache(); $parent = $_POST['dir']; $cache->remove('files_tree_cache' . $parent); } else { // Nothing to do here } } }
if ($dirs_stat == '') { $dirs_stat = array(); } else { $dirs_stat = unserialize($dirs_stat); } // Clean $s = array(); foreach ($dirs_stat as $dir => $stat) { if (substr($dir, 0, 1) == '/') { $s[$dir] = $stat; } } $dirs_stat = $s; /* Caching results */ $loglist = ''; $inilist = ''; $dir_cache_file = 'files_tree_cache' . $currentdir; $cache = new OC\Cache\UserCache(); if (!isset($_REQUEST['refresh']) && null !== ($loglist = $cache->get($dir_cache_file))) { $inilist = $loglist; } if ($loglist == '') { $loglist = listdir($currentdir, $dirs_stat); } if ($loglist != '' && $inilist == '') { $cache->set($dir_cache_file, $loglist); \OC_Log::write('files_tree', 'cache saved to file ' . $dir_cache_file, \OC_Log::DEBUG); } /* Sendind results */ $shared_show = OC_Preferences::getValue($uid, 'files_tree', 'shared_show', ''); echo json_encode(array('list' => $loglist, 'stat' => $dirs_stat, 'shared' => $shared_show));