aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files/lib
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files/lib')
-rw-r--r--apps/files/lib/Activity/Helper.php5
-rw-r--r--apps/files/lib/Activity/Provider.php6
-rw-r--r--apps/files/lib/BackgroundJob/TransferOwnership.php6
-rw-r--r--apps/files/lib/Collaboration/Resources/ResourceProvider.php12
-rw-r--r--apps/files/lib/Controller/ViewController.php17
-rw-r--r--apps/files/lib/Listener/SyncLivePhotosListener.php6
6 files changed, 23 insertions, 29 deletions
diff --git a/apps/files/lib/Activity/Helper.php b/apps/files/lib/Activity/Helper.php
index 7bbaf44ab4c..9ad790f5154 100644
--- a/apps/files/lib/Activity/Helper.php
+++ b/apps/files/lib/Activity/Helper.php
@@ -61,9 +61,8 @@ class Helper {
$userFolder = $this->rootFolder->getUserFolder($user);
$favoriteNodes = [];
foreach ($favorites as $favorite) {
- $nodes = $userFolder->getById($favorite);
- if (!empty($nodes)) {
- $node = array_shift($nodes);
+ $node = $userFolder->getFirstNodeById($favorite);
+ if ($node) {
if (!$foldersOnly || $node instanceof Folder) {
$favoriteNodes[] = $node;
}
diff --git a/apps/files/lib/Activity/Provider.php b/apps/files/lib/Activity/Provider.php
index fb81e200688..50535cab5c6 100644
--- a/apps/files/lib/Activity/Provider.php
+++ b/apps/files/lib/Activity/Provider.php
@@ -433,8 +433,8 @@ class Provider implements IProvider {
}
$userFolder = $this->rootFolder->getUserFolder($this->activityManager->getCurrentUserId());
- $files = $userFolder->getById($fileId);
- if (empty($files)) {
+ $file = $userFolder->getFirstNodeById($fileId);
+ if (!$file) {
try {
// Deleted, try with parent
$file = $this->findExistingParent($userFolder, dirname($path));
@@ -450,8 +450,6 @@ class Provider implements IProvider {
return $file;
}
- $file = array_shift($files);
-
if ($file instanceof Folder && $file->isEncrypted()) {
// If the folder is encrypted, it is the Container,
// but can be the name is just fine.
diff --git a/apps/files/lib/BackgroundJob/TransferOwnership.php b/apps/files/lib/BackgroundJob/TransferOwnership.php
index 1f182b5e999..5cf35396d43 100644
--- a/apps/files/lib/BackgroundJob/TransferOwnership.php
+++ b/apps/files/lib/BackgroundJob/TransferOwnership.php
@@ -61,14 +61,14 @@ class TransferOwnership extends QueuedJob {
$fileId = $transfer->getFileId();
$userFolder = $this->rootFolder->getUserFolder($sourceUser);
- $nodes = $userFolder->getById($fileId);
+ $node = $userFolder->getFirstNodeById($fileId);
- if (empty($nodes)) {
+ if (!$node) {
$this->logger->alert('Could not transfer ownership: Node not found');
$this->failedNotication($transfer);
return;
}
- $path = $userFolder->getRelativePath($nodes[0]->getPath());
+ $path = $userFolder->getRelativePath($node->getPath());
$sourceUserObject = $this->userManager->get($sourceUser);
$destinationUserObject = $this->userManager->get($destinationUser);
diff --git a/apps/files/lib/Collaboration/Resources/ResourceProvider.php b/apps/files/lib/Collaboration/Resources/ResourceProvider.php
index 4c5afc76b2b..a15e1558057 100644
--- a/apps/files/lib/Collaboration/Resources/ResourceProvider.php
+++ b/apps/files/lib/Collaboration/Resources/ResourceProvider.php
@@ -60,9 +60,9 @@ class ResourceProvider implements IProvider {
if (isset($this->nodes[(int) $resource->getId()])) {
return $this->nodes[(int) $resource->getId()];
}
- $nodes = $this->rootFolder->getById((int) $resource->getId());
- if (!empty($nodes)) {
- $this->nodes[(int) $resource->getId()] = array_shift($nodes);
+ $node = $this->rootFolder->getFirstNodeById((int) $resource->getId());
+ if ($node) {
+ $this->nodes[(int) $resource->getId()] = $node;
return $this->nodes[(int) $resource->getId()];
}
return null;
@@ -113,10 +113,10 @@ class ResourceProvider implements IProvider {
}
$userFolder = $this->rootFolder->getUserFolder($user->getUID());
- $nodes = $userFolder->getById((int) $resource->getId());
+ $node = $userFolder->getById((int) $resource->getId());
- if (!empty($nodes)) {
- $this->nodes[(int) $resource->getId()] = array_shift($nodes);
+ if ($node) {
+ $this->nodes[(int) $resource->getId()] = $node;
return true;
}
diff --git a/apps/files/lib/Controller/ViewController.php b/apps/files/lib/Controller/ViewController.php
index e7398cc21c2..12de4e1f6a2 100644
--- a/apps/files/lib/Controller/ViewController.php
+++ b/apps/files/lib/Controller/ViewController.php
@@ -302,8 +302,7 @@ class ViewController extends Controller {
$uid = $user->getUID();
$userFolder = $this->rootFolder->getUserFolder($uid);
- $nodes = $userFolder->getById((int) $fileid);
- $node = array_shift($nodes);
+ $node = $userFolder->getFirstNodeById((int) $fileid);
if ($node === null) {
return;
@@ -343,17 +342,16 @@ class ViewController extends Controller {
private function redirectToFileIfInTrashbin($fileId): RedirectResponse {
$uid = $this->userSession->getUser()->getUID();
$baseFolder = $this->rootFolder->getUserFolder($uid);
- $nodes = $baseFolder->getById($fileId);
+ $node = $baseFolder->getFirstNodeById($fileId);
$params = [];
- if (empty($nodes) && $this->appManager->isEnabledForUser('files_trashbin')) {
+ if (!$node && $this->appManager->isEnabledForUser('files_trashbin')) {
/** @var Folder */
$baseFolder = $this->rootFolder->get($uid . '/files_trashbin/files/');
- $nodes = $baseFolder->getById($fileId);
+ $node = $baseFolder->getFirstNodeById($fileId);
$params['view'] = 'trashbin';
- if (!empty($nodes)) {
- $node = current($nodes);
+ if ($node) {
$params['fileid'] = $fileId;
if ($node instanceof Folder) {
// set the full path to enter the folder
@@ -378,7 +376,7 @@ class ViewController extends Controller {
private function redirectToFile(int $fileId) {
$uid = $this->userSession->getUser()->getUID();
$baseFolder = $this->rootFolder->getUserFolder($uid);
- $nodes = $baseFolder->getById($fileId);
+ $node = $baseFolder->getFirstNodeById($fileId);
$params = ['view' => 'files'];
try {
@@ -386,8 +384,7 @@ class ViewController extends Controller {
} catch (NotFoundException $e) {
}
- if (!empty($nodes)) {
- $node = current($nodes);
+ if ($node) {
$params['fileid'] = $fileId;
if ($node instanceof Folder) {
// set the full path to enter the folder
diff --git a/apps/files/lib/Listener/SyncLivePhotosListener.php b/apps/files/lib/Listener/SyncLivePhotosListener.php
index b188ad24073..ea63c08f94d 100644
--- a/apps/files/lib/Listener/SyncLivePhotosListener.php
+++ b/apps/files/lib/Listener/SyncLivePhotosListener.php
@@ -233,9 +233,9 @@ class SyncLivePhotosListener implements IEventListener {
$peerFileId = (int)$metadata->getString('files-live-photo');
// Check the user's folder.
- $nodes = $this->userFolder->getById($peerFileId);
- if (count($nodes) !== 0) {
- return $nodes[0];
+ $node = $this->userFolder->getFirstNodeById($peerFileId);
+ if ($node) {
+ return $node;
}
// Check the user's trashbin.