summaryrefslogtreecommitdiffstats
path: root/apps/theming/lib/Jobs/MigrateBackgroundImages.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/theming/lib/Jobs/MigrateBackgroundImages.php')
-rw-r--r--apps/theming/lib/Jobs/MigrateBackgroundImages.php28
1 files changed, 22 insertions, 6 deletions
diff --git a/apps/theming/lib/Jobs/MigrateBackgroundImages.php b/apps/theming/lib/Jobs/MigrateBackgroundImages.php
index 97806fa600a..b816a4c8775 100644
--- a/apps/theming/lib/Jobs/MigrateBackgroundImages.php
+++ b/apps/theming/lib/Jobs/MigrateBackgroundImages.php
@@ -34,6 +34,7 @@ use OCP\BackgroundJob\QueuedJob;
use OCP\Files\AppData\IAppDataFactory;
use OCP\Files\NotFoundException;
use OCP\Files\NotPermittedException;
+use OCP\Files\SimpleFS\ISimpleFolder;
use OCP\IConfig;
class MigrateBackgroundImages extends QueuedJob {
@@ -57,7 +58,6 @@ class MigrateBackgroundImages extends QueuedJob {
return;
}
- $themingData = $this->appDataFactory->get(Application::APP_ID);
$dashboardData = $this->appDataFactory->get('dashboard');
$userIds = $this->config->getUsersForUserValue('theming', 'background', 'custom');
@@ -79,11 +79,8 @@ class MigrateBackgroundImages extends QueuedJob {
// migration
$file = $dashboardData->getFolder($userId)->getFile('background.jpg');
- try {
- $targetDir = $themingData->getFolder($userId);
- } catch (NotFoundException $e) {
- $targetDir = $themingData->newFolder($userId);
- }
+ $targetDir = $this->getUserFolder($userId);
+
if (!$targetDir->fileExists('background.jpg')) {
$targetDir->newFile('background.jpg', $file->getContent());
}
@@ -104,4 +101,23 @@ class MigrateBackgroundImages extends QueuedJob {
$this->jobList->add(self::class);
}
}
+
+ /**
+ * Get the root location for users theming data
+ */
+ protected function getUserFolder(string $userId): ISimpleFolder {
+ $themingData = $this->appDataFactory->get(Application::APP_ID);
+
+ try {
+ $rootFolder = $themingData->getFolder('users');
+ } catch (NotFoundException $e) {
+ $rootFolder = $themingData->newFolder('users');
+ }
+
+ try {
+ return $rootFolder->getFolder($userId);
+ } catch (NotFoundException $e) {
+ return $rootFolder->newFolder($userId);
+ }
+ }
}