Skip to content
Snippets Groups Projects
Commit 8d490b98 authored by Michael Gapczynski's avatar Michael Gapczynski
Browse files

Fix shared storage working with user backend defined data directories

parent 3828d861
No related branches found
No related tags found
No related merge requests found
...@@ -30,7 +30,6 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { ...@@ -30,7 +30,6 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
public function __construct($arguments) { public function __construct($arguments) {
$this->sharedFolder = $arguments['sharedFolder']; $this->sharedFolder = $arguments['sharedFolder'];
OC_Util::setupFS4all();
} }
/** /**
...@@ -78,6 +77,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { ...@@ -78,6 +77,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
private function getSourcePath($target) { private function getSourcePath($target) {
$file = $this->getFile($target); $file = $this->getFile($target);
if (isset($file['path'])) { if (isset($file['path'])) {
$uid = substr($file['path'], 1, strpos($file['path'], '/', 1) - 1);
OC_Filesystem::mount('OC_Filestorage_Local', array('datadir' => OC_User::getHome($uid)), $uid);
return $file['path']; return $file['path'];
} }
return false; return false;
......
...@@ -35,13 +35,11 @@ class OC_Util { ...@@ -35,13 +35,11 @@ class OC_Util {
$user_dir = '/'.$user.'/files'; $user_dir = '/'.$user.'/files';
$user_root = OC_User::getHome($user); $user_root = OC_User::getHome($user);
$userdirectory = $user_root . '/files'; $userdirectory = $user_root . '/files';
OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>$user_root), $user);
if( !is_dir( $userdirectory )){ if( !is_dir( $userdirectory )){
mkdir( $userdirectory, 0755, true ); mkdir( $userdirectory, 0755, true );
} }
OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>$user_root), $user);
//jail the user into his "home" directory //jail the user into his "home" directory
OC_Filesystem::mount('OC_Filestorage_Local', array('datadir' => $user_root), $user);
OC_Filesystem::init($user_dir); OC_Filesystem::init($user_dir);
$quotaProxy=new OC_FileProxy_Quota(); $quotaProxy=new OC_FileProxy_Quota();
OC_FileProxy::register($quotaProxy); OC_FileProxy::register($quotaProxy);
...@@ -59,12 +57,6 @@ class OC_Util { ...@@ -59,12 +57,6 @@ class OC_Util {
} }
} }
public static function setupFS4all(){
foreach(OC_User::getUsers() as $user){
OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>OC_User::getHome($singleuser)), $user);
}
}
public static function tearDownFS(){ public static function tearDownFS(){
OC_Filesystem::tearDown(); OC_Filesystem::tearDown();
self::$fsSetup=false; self::$fsSetup=false;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment