diff options
author | Bjoern Schiessle <bjoern@schiessle.org> | 2017-08-28 12:27:29 +0200 |
---|---|---|
committer | Bjoern Schiessle <bjoern@schiessle.org> | 2017-08-28 14:03:21 +0200 |
commit | 9128786d099fefb61943c8fa4243e5aea60ba534 (patch) | |
tree | 3c000bd8d6ae309fd5a5c81553a8b7cdc0a35d97 | |
parent | eb71c1288db38199fcd974ae1b75a15c804d6f1e (diff) | |
download | nextcloud-server-9128786d099fefb61943c8fa4243e5aea60ba534.tar.gz nextcloud-server-9128786d099fefb61943c8fa4243e5aea60ba534.zip |
add propfind to detect encryption status
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
-rw-r--r-- | apps/dav/lib/Connector/Sabre/FilesPlugin.php | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/apps/dav/lib/Connector/Sabre/FilesPlugin.php b/apps/dav/lib/Connector/Sabre/FilesPlugin.php index efc9a42e5f5..40b39745f27 100644 --- a/apps/dav/lib/Connector/Sabre/FilesPlugin.php +++ b/apps/dav/lib/Connector/Sabre/FilesPlugin.php @@ -66,6 +66,7 @@ class FilesPlugin extends ServerPlugin { const DATA_FINGERPRINT_PROPERTYNAME = '{http://owncloud.org/ns}data-fingerprint'; const HAS_PREVIEW_PROPERTYNAME = '{http://nextcloud.org/ns}has-preview'; const MOUNT_TYPE_PROPERTYNAME = '{http://nextcloud.org/ns}mount-type'; + const IS_ENCRYPTED_PROPERTYNAME = '{http://nextcloud.org/ns}is-encrypted'; /** * Reference to main server object @@ -146,7 +147,6 @@ class FilesPlugin extends ServerPlugin { * @return void */ public function initialize(\Sabre\DAV\Server $server) { - $server->xml->namespaceMap[self::NS_OWNCLOUD] = 'oc'; $server->xml->namespaceMap[self::NS_NEXTCLOUD] = 'nc'; $server->protectedProperties[] = self::FILEID_PROPERTYNAME; @@ -161,6 +161,7 @@ class FilesPlugin extends ServerPlugin { $server->protectedProperties[] = self::DATA_FINGERPRINT_PROPERTYNAME; $server->protectedProperties[] = self::HAS_PREVIEW_PROPERTYNAME; $server->protectedProperties[] = self::MOUNT_TYPE_PROPERTYNAME; + $server->protectedProperties[] = self::IS_ENCRYPTED_PROPERTYNAME; // normally these cannot be changed (RFC4918), but we want them modifiable through PROPPATCH $allowedProperties = ['{DAV:}getetag']; @@ -343,6 +344,11 @@ class FilesPlugin extends ServerPlugin { } }); + $propFind->handle(self::IS_ENCRYPTED_PROPERTYNAME, function() use ($node) { + $result = $node->getFileInfo()->isEncrypted() ? '1' : '0'; + return $result; + }); + $propFind->handle(self::HAS_PREVIEW_PROPERTYNAME, function () use ($node) { return json_encode($this->previewManager->isAvailable($node->getFileInfo())); }); |