summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/files/lib/Collaboration/Resources/ResourceProvider.php22
-rw-r--r--core/Controller/CollaborationResourcesController.php2
-rw-r--r--lib/private/Collaboration/Resources/Manager.php4
-rw-r--r--lib/private/Collaboration/Resources/Resource.php4
-rw-r--r--lib/public/Collaboration/Resources/IProvider.php2
-rw-r--r--lib/public/Collaboration/Resources/IResource.php3
6 files changed, 21 insertions, 16 deletions
diff --git a/apps/files/lib/Collaboration/Resources/ResourceProvider.php b/apps/files/lib/Collaboration/Resources/ResourceProvider.php
index d29b18afea3..27b155b7641 100644
--- a/apps/files/lib/Collaboration/Resources/ResourceProvider.php
+++ b/apps/files/lib/Collaboration/Resources/ResourceProvider.php
@@ -1,4 +1,5 @@
<?php
+declare(strict_types=1);
/**
* @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>
*
@@ -24,7 +25,6 @@ namespace OCA\Files\Collaboration\Resources;
use OCP\Collaboration\Resources\IProvider;
use OCP\Collaboration\Resources\IResource;
-use OCP\Collaboration\Resources\ResourceException;
use OCP\Files\IRootFolder;
use OCP\Files\Node;
use OCP\IURLGenerator;
@@ -65,7 +65,7 @@ class ResourceProvider implements IProvider {
*
* @param IResource $resource
* @return string
- * @since 15.0.0
+ * @since 16.0.0
*/
public function getName(IResource $resource): string {
if (isset($this->nodes[(int) $resource->getId()])) {
@@ -84,7 +84,7 @@ class ResourceProvider implements IProvider {
* @param IResource $resource
* @param IUser $user
* @return bool
- * @since 15.0.0
+ * @since 16.0.0
*/
public function canAccessResource(IResource $resource, IUser $user = null): bool {
if (!$user instanceof IUser) {
@@ -107,21 +107,25 @@ class ResourceProvider implements IProvider {
*
* @param IResource $resource
* @return string
- * @since 15.0.0
+ * @since 16.0.0
*/
- public function getIconClass(IResource $resource): string {
+ public function getIconLink(IResource $resource): string {
$node = $this->getNode($resource);
if ($node && $node->getMimetype() === 'httpd/unix-directory') {
- return 'icon-files-dark';
+ return $this->urlGenerator->getAbsoluteURL(
+ $this->urlGenerator->imagePath('core', 'places/files')
+ );
}
- return 'icon-filetype-file';
+ return $this->urlGenerator->getAbsoluteURL(
+ $this->urlGenerator->imagePath('core', 'filetypes/file')
+ );
}
/**
* Get the resource type of the provider
*
* @return string
- * @since 15.0.0
+ * @since 16.0.0
*/
public function getType(): string {
return self::RESOURCE_TYPE;
@@ -132,7 +136,7 @@ class ResourceProvider implements IProvider {
*
* @param IResource $resource
* @return string
- * @since 15.0.0
+ * @since 16.0.0
*/
public function getLink(IResource $resource): string {
return $this->urlGenerator->linkToRoute('files.viewcontroller.showFile', ['fileid' => $resource->getId()]);
diff --git a/core/Controller/CollaborationResourcesController.php b/core/Controller/CollaborationResourcesController.php
index 4278334c2b9..3699746f735 100644
--- a/core/Controller/CollaborationResourcesController.php
+++ b/core/Controller/CollaborationResourcesController.php
@@ -245,7 +245,7 @@ class CollaborationResourcesController extends OCSController {
'type' => $resource->getType(),
'id' => $resource->getId(),
'name' => $resource->getName(),
- 'iconClass' => $resource->getIconClass(),
+ 'iconLink' => $resource->getIconLink(),
'link' => $resource->getLink(),
];
}
diff --git a/lib/private/Collaboration/Resources/Manager.php b/lib/private/Collaboration/Resources/Manager.php
index dc4d2fc0265..d1b84f96283 100644
--- a/lib/private/Collaboration/Resources/Manager.php
+++ b/lib/private/Collaboration/Resources/Manager.php
@@ -309,11 +309,11 @@ class Manager implements IManager {
* @param IResource $resource
* @return string
*/
- public function getIconClass(IResource $resource): string {
+ public function getIconLink(IResource $resource): string {
foreach ($this->getProviders() as $provider) {
if ($provider->getType() === $resource->getType()) {
try {
- return $provider->getIconClass($resource);
+ return $provider->getIconLink($resource);
} catch (ResourceException $e) {
}
}
diff --git a/lib/private/Collaboration/Resources/Resource.php b/lib/private/Collaboration/Resources/Resource.php
index d9c72ca2039..0a3c003b27c 100644
--- a/lib/private/Collaboration/Resources/Resource.php
+++ b/lib/private/Collaboration/Resources/Resource.php
@@ -106,9 +106,9 @@ class Resource implements IResource {
* @return string
* @since 16.0.0
*/
- public function getIconClass(): string {
+ public function getIconLink(): string {
if ($this->iconClass === null) {
- $this->iconClass = $this->manager->getIconClass($this);
+ $this->iconClass = $this->manager->getIconLink($this);
}
return $this->iconClass;
diff --git a/lib/public/Collaboration/Resources/IProvider.php b/lib/public/Collaboration/Resources/IProvider.php
index 376a816a5cb..16ab16c0d1b 100644
--- a/lib/public/Collaboration/Resources/IProvider.php
+++ b/lib/public/Collaboration/Resources/IProvider.php
@@ -53,7 +53,7 @@ interface IProvider {
* @return string
* @since 16.0.0
*/
- public function getIconClass(IResource $resource): string;
+ public function getIconLink(IResource $resource): string;
/**
* Get the link to a resource
diff --git a/lib/public/Collaboration/Resources/IResource.php b/lib/public/Collaboration/Resources/IResource.php
index 609a283c2d8..0a3e36a33ce 100644
--- a/lib/public/Collaboration/Resources/IResource.php
+++ b/lib/public/Collaboration/Resources/IResource.php
@@ -48,10 +48,11 @@ interface IResource {
public function getName(): string;
/**
+ * Absolute link to an icon to represent the resource
* @return string
* @since 16.0.0
*/
- public function getIconClass(): string;
+ public function getIconLink(): string;
/**
* @return string