summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoeland Jago Douma <roeland@famdouma.nl>2018-10-15 08:47:07 +0200
committerDaniel Calviño Sánchez <danxuliu@gmail.com>2018-10-30 15:18:55 +0100
commitbc960bae028650d6bfeed4591bf49c8641dd149d (patch)
treebea8b2e340d769cca9a83e9b515504379bb57c5c
parent81f37401f9c289a5ae9d2100cb39bdfa29aa9e2b (diff)
downloadnextcloud-server-bc960bae028650d6bfeed4591bf49c8641dd149d.tar.gz
nextcloud-server-bc960bae028650d6bfeed4591bf49c8641dd149d.zip
Extend IShare to show hide download state
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
-rw-r--r--lib/private/Share20/Share.php13
-rw-r--r--lib/public/Share/IShare.php21
2 files changed, 34 insertions, 0 deletions
diff --git a/lib/private/Share20/Share.php b/lib/private/Share20/Share.php
index 71c0453d9e5..e218360f87b 100644
--- a/lib/private/Share20/Share.php
+++ b/lib/private/Share20/Share.php
@@ -30,6 +30,7 @@ use OCP\Files\Node;
use OCP\Files\NotFoundException;
use OCP\IUserManager;
use OCP\Share\Exceptions\IllegalIDChangeException;
+use OCP\Share\IShare;
class Share implements \OCP\Share\IShare {
@@ -85,6 +86,9 @@ class Share implements \OCP\Share\IShare {
/** @var ICacheEntry|null */
private $nodeCacheEntry;
+ /** @var bool */
+ private $hideDownload = false;
+
public function __construct(IRootFolder $rootFolder, IUserManager $userManager) {
$this->rootFolder = $rootFolder;
$this->userManager = $userManager;
@@ -514,4 +518,13 @@ class Share implements \OCP\Share\IShare {
public function getNodeCacheEntry() {
return $this->nodeCacheEntry;
}
+
+ public function setHideDownload(bool $hide): IShare {
+ $this->hideDownload = $hide;
+ return $this;
+ }
+
+ public function getHideDownload(): bool {
+ return $this->hideDownload;
+ }
}
diff --git a/lib/public/Share/IShare.php b/lib/public/Share/IShare.php
index 43543fdad47..dcd5fdecbea 100644
--- a/lib/public/Share/IShare.php
+++ b/lib/public/Share/IShare.php
@@ -418,4 +418,25 @@ interface IShare {
* @since 11.0.0
*/
public function getNodeCacheEntry();
+
+ /**
+ * Sets a shares hide download state
+ * This is mainly for public shares. It will signal that the share page should
+ * hide download buttons etc.
+ *
+ * @param bool $ro
+ * @return IShare
+ * @since 15.0.0
+ */
+ public function setHideDownload(bool $hide): IShare;
+
+ /**
+ * Gets a shares hide download state
+ * This is mainly for public shares. It will signal that the share page should
+ * hide download buttons etc.
+ *
+ * @return bool
+ * @since 15.0.0
+ */
+ public function getHideDownload(): bool;
}