Browse Source
Propfind for deletion time of trash files
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
pull/9415/head
Roeland Jago Douma
8 years ago
No known key found for this signature in database
GPG Key ID: F941078878347C0C
6 changed files with
19 additions and
3 deletions
-
apps/files_trashbin/lib/Sabre/ITrash.php
-
apps/files_trashbin/lib/Sabre/PropfindPlugin.php
-
apps/files_trashbin/lib/Sabre/TrashFile.php
-
apps/files_trashbin/lib/Sabre/TrashFolder.php
-
apps/files_trashbin/lib/Sabre/TrashFolderFile.php
-
apps/files_trashbin/lib/Sabre/TrashFolderFolder.php
|
|
|
@ -29,4 +29,6 @@ interface ITrash { |
|
|
|
public function getFilename(): string; |
|
|
|
|
|
|
|
public function getOriginalLocation(): string; |
|
|
|
|
|
|
|
public function getDeletionTime(): int; |
|
|
|
} |
|
|
|
@ -33,6 +33,7 @@ class PropfindPlugin extends ServerPlugin { |
|
|
|
|
|
|
|
const TRASHBIN_FILENAME = '{http://nextcloud.org/ns}trashbin-filename'; |
|
|
|
const TRASHBIN_ORIGINAL_LOCATION = '{http://nextcloud.org/ns}trashbin-original-location'; |
|
|
|
const TRASHBIN_DELETION_TIME = '{http://nextcloud.org/ns}trashbin-deletion-time'; |
|
|
|
|
|
|
|
/** @var Server */ |
|
|
|
private $server; |
|
|
|
@ -59,6 +60,10 @@ class PropfindPlugin extends ServerPlugin { |
|
|
|
$propFind->handle(self::TRASHBIN_ORIGINAL_LOCATION, function() use ($node) { |
|
|
|
return $node->getOriginalLocation(); |
|
|
|
}); |
|
|
|
|
|
|
|
$propFind->handle(self::TRASHBIN_DELETION_TIME, function () use ($node) { |
|
|
|
return $node->getDeletionTime(); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
@ -87,5 +87,7 @@ class TrashFile implements IFile, ITrash { |
|
|
|
return $this->data['extraData']; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public function getDeletionTime(): int { |
|
|
|
return $this->getLastModified(); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -116,5 +116,8 @@ class TrashFolder implements ICollection, ITrash { |
|
|
|
return $this->data['extraData']; |
|
|
|
} |
|
|
|
|
|
|
|
public function getDeletionTime(): int { |
|
|
|
return $this->getLastModified(); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
@ -98,5 +98,7 @@ class TrashFolderFile implements IFile, ITrash { |
|
|
|
return $this->location . '/' . $this->getFilename(); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public function getDeletionTime(): int { |
|
|
|
return $this->getLastModified(); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -129,5 +129,7 @@ class TrashFolderFolder implements ICollection, ITrash { |
|
|
|
return $this->location . '/' . $this->getFilename(); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public function getDeletionTime(): int { |
|
|
|
return $this->getLastModified(); |
|
|
|
} |
|
|
|
} |