diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-03-01 09:40:37 -0800 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-03-01 09:40:37 -0800 |
commit | 87c8fff2d2bcfbaf414991db25594c3bca67c08f (patch) | |
tree | 8e624441843cea01968a6cf09d43844372c5075a | |
parent | f7cb53b103e6f1a9bd53055c384a4ca9c69a3948 (diff) | |
parent | a01540a3001906812f5626478fcfaf2e3af8b82e (diff) | |
download | nextcloud-server-87c8fff2d2bcfbaf414991db25594c3bca67c08f.tar.gz nextcloud-server-87c8fff2d2bcfbaf414991db25594c3bca67c08f.zip |
Merge pull request #2007 from owncloud/fix_1834_master
make sure that the version app always works on the users real home folder [master]
-rw-r--r-- | apps/files_versions/history.php | 3 | ||||
-rw-r--r-- | apps/files_versions/lib/versions.php | 15 |
2 files changed, 10 insertions, 8 deletions
diff --git a/apps/files_versions/history.php b/apps/files_versions/history.php index 437a3fec065..719a7208fed 100644 --- a/apps/files_versions/history.php +++ b/apps/files_versions/history.php @@ -59,7 +59,8 @@ if ( isset( $_GET['path'] ) ) { // show the history only if there is something to show $count = 999; //show the newest revisions - if( ($versions = OCA\Files_Versions\Storage::getVersions( $path, $count)) ) { + list ($uid, $filename) = OCA\Files_Versions\Storage::getUidAndFilename($path); + if( ($versions = OCA\Files_Versions\Storage::getVersions($uid, $filename, $count)) ) { $tmpl->assign( 'versions', array_reverse( $versions ) ); diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php index 12f8fdaa0dc..6ee307c7e17 100644 --- a/apps/files_versions/lib/versions.php +++ b/apps/files_versions/lib/versions.php @@ -86,6 +86,7 @@ class Storage { $files_view = new \OC\Files\View('/'.$uid .'/files'); $users_view = new \OC\Files\View('/'.$uid); + $versions_view = new \OC\Files\View('/'.$uid.'/files_versions'); // check if filename is a directory if($files_view->is_dir($filename)) { @@ -99,7 +100,7 @@ class Storage { // create all parent folders $info=pathinfo($filename); - $versionsFolderName=\OCP\Config::getSystemValue('datadirectory').$users_view->getAbsolutePath('files_versions/'); + $versionsFolderName=$versions_view->getLocalFolder(''); if(!file_exists($versionsFolderName.'/'.$info['dirname'])) { mkdir($versionsFolderName.'/'.$info['dirname'], 0750, true); } @@ -130,7 +131,7 @@ class Storage { list($uid, $filename) = self::getUidAndFilename($filename); $versions_fileview = new \OC\Files\View('/'.$uid .'/files_versions'); - $abs_path = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$filename.'.v'; + $abs_path = $versions_fileview->getLocalFile($filename.'.v'); if( ($versions = self::getVersions($uid, $filename)) ) { $versionsSize = self::getVersionsSize($uid); if ( $versionsSize === false || $versionsSize < 0 ) { @@ -152,7 +153,7 @@ class Storage { list($uidn, $newpath) = self::getUidAndFilename($newpath); $versions_view = new \OC\Files\View('/'.$uid .'/files_versions'); $files_view = new \OC\Files\View('/'.$uid .'/files'); - $abs_newpath = \OCP\Config::getSystemValue('datadirectory').$versions_view->getAbsolutePath('').$newpath; + $abs_newpath = $versions_view->getLocalFile($newpath); if ( $files_view->is_dir($oldpath) && $versions_view->is_dir($oldpath) ) { $versions_view->rename($oldpath, $newpath); @@ -207,8 +208,8 @@ class Storage { public static function getVersions($uid, $filename, $count = 0 ) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { $versions_fileview = new \OC\Files\View('/' . $uid . '/files_versions'); - - $versionsName = \OC_Filesystem::normalizePath(\OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath($filename)); + $versionsName = $versions_fileview->getLocalFile($filename); + $versions = array(); // fetch for old versions $matches = glob(preg_quote($versionsName).'.v*' ); @@ -271,7 +272,7 @@ class Storage { private static function calculateSize($uid) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { $versions_fileview = new \OC\Files\View('/'.$uid.'/files_versions'); - $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath(''); + $versionsRoot = $versions_fileview->getLocalFolder(''); $iterator = new \RecursiveIteratorIterator( new \RecursiveDirectoryIterator($versionsRoot), @@ -299,7 +300,7 @@ class Storage { private static function getAllVersions($uid) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { $versions_fileview = new \OC\Files\View('/'.$uid.'/files_versions'); - $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath(''); + $versionsRoot = $versions_fileview->getLocalFolder(''); $iterator = new \RecursiveIteratorIterator( new \RecursiveDirectoryIterator($versionsRoot), |