aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files/lib/helper.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files/lib/helper.php')
-rw-r--r--apps/files/lib/helper.php22
1 files changed, 22 insertions, 0 deletions
diff --git a/apps/files/lib/helper.php b/apps/files/lib/helper.php
index 282f0678a9a..3c13b8ea6e2 100644
--- a/apps/files/lib/helper.php
+++ b/apps/files/lib/helper.php
@@ -111,4 +111,26 @@ class Helper
}
return $breadcrumb;
}
+
+ /**
+ * Returns the numeric permissions for the given directory.
+ * @param string $dir directory without trailing slash
+ * @return numeric permissions
+ */
+ public static function getDirPermissions($dir){
+ $permissions = \OCP\PERMISSION_READ;
+ if (\OC\Files\Filesystem::isCreatable($dir . '/')) {
+ $permissions |= \OCP\PERMISSION_CREATE;
+ }
+ if (\OC\Files\Filesystem::isUpdatable($dir . '/')) {
+ $permissions |= \OCP\PERMISSION_UPDATE;
+ }
+ if (\OC\Files\Filesystem::isDeletable($dir . '/')) {
+ $permissions |= \OCP\PERMISSION_DELETE;
+ }
+ if (\OC\Files\Filesystem::isSharable($dir . '/')) {
+ $permissions |= \OCP\PERMISSION_SHARE;
+ }
+ return $permissions;
+ }
}