From dbbf195727d698a5ba46d7cfee06eb9ea7916d96 Mon Sep 17 00:00:00 2001 From: Michael Gapczynski Date: Wed, 29 May 2013 18:08:18 -0400 Subject: Only retrieve the current user's permissions --- lib/files/cache/permissions.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'lib/files/cache') diff --git a/lib/files/cache/permissions.php b/lib/files/cache/permissions.php index 73473142c74..29c30b0f36c 100644 --- a/lib/files/cache/permissions.php +++ b/lib/files/cache/permissions.php @@ -89,14 +89,15 @@ class Permissions { * get the permissions for all files in a folder * * @param int $parentId + * @param string $user * @return int[] */ - public function getDirectoryPermissions($parentId) { + public function getDirectoryPermissions($parentId, $user) { $query = \OC_DB::prepare('SELECT `*PREFIX*permissions`.`fileid`, `permissions` - FROM `*PREFIX*permissions` INNER JOIN `*PREFIX*filecache` ON `*PREFIX*permissions`.fileid = `*PREFIX*filecache`.fileid - WHERE `*PREFIX*filecache`.parent = ?'); + FROM `*PREFIX*permissions` INNER JOIN `*PREFIX*filecache` ON `*PREFIX*permissions`.`fileid` = `*PREFIX*filecache`.`fileid` + WHERE `*PREFIX*filecache`.`parent` = ? AND `*PREFIX*permissions`.`user` = ?'); - $result = $query->execute(array($parentId)); + $result = $query->execute(array($parentId, $user)); $filePermissions = array(); while ($row = $result->fetchRow()) { $filePermissions[$row['fileid']] = $row['permissions']; -- cgit v1.2.3