if the files doesn't exist yet we start with the parent to search for shares

This commit is contained in:
Bjoern Schiessle 2013-09-05 10:08:13 +02:00
parent 93f4dec798
commit 627b6164c4

View file

@ -134,19 +134,25 @@ class Share {
* not '/admin/data/file.txt'
*/
public static function getUsersSharingFile($path, $user, $includeOwner = false) {
error_log("getuser sharing files for: " . $path . " and " . $user);
$shares = array();
$publicShare = false;
$source = -1;
$cache = false;
$view = new \OC\Files\View('/' . $user . '/files/');
$meta = $view->getFileInfo(\OC\Files\Filesystem::normalizePath($path));
$view = new \OC\Files\View('/' . $user . '/files');
if ($view->file_exists($path)) {
$meta = $view->getFileInfo($path);
} else {
// if the file doesn't exists yet we start with the parent folder
$meta = $view->getFileInfo(dirname($path));
}
if($meta !== false) {
error_log("source: " . $meta['fileid']);
$source = $meta['fileid'];
$cache = new \OC\Files\Cache\Cache($meta['storage']);
}
} else error_log("no source");
while ($source !== -1) {
@ -165,6 +171,7 @@ class Share {
\OCP\Util::writeLog('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR);
} else {
while ($row = $result->fetchRow()) {
error_log("add user: " . $row['share_with']);
$shares[] = $row['share_with'];
}
}
@ -184,6 +191,7 @@ class Share {
\OCP\Util::writeLog('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR);
} else {
while ($row = $result->fetchRow()) {
error_log("group found: " . $row['share_with']);
$usersInGroup = \OC_Group::usersInGroup($row['share_with']);
$shares = array_merge($shares, $usersInGroup);
}