diff options
author | Robin Appelman <robin@icewind.nl> | 2016-11-18 14:55:07 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-18 14:55:07 +0100 |
commit | 8b9ad46ba3ef876f00dc6bdadd7b51d7b1fa1c78 (patch) | |
tree | bc9c6a21ddc68656d8fd93c67f11b754a358afdb /apps/theming/lib | |
parent | 6c11c54434b29bb9f7f07ba9a8070ed8308bc5a4 (diff) | |
parent | 4ac5fdcf11b0ca7dd985d50a91393a1c185821ff (diff) | |
download | nextcloud-server-8b9ad46ba3ef876f00dc6bdadd7b51d7b1fa1c78.tar.gz nextcloud-server-8b9ad46ba3ef876f00dc6bdadd7b51d7b1fa1c78.zip |
Merge pull request #768 from nextcloud/s3-objectstore
Add S3 objectstore backend
Diffstat (limited to 'apps/theming/lib')
-rw-r--r-- | apps/theming/lib/Controller/ThemingController.php | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/apps/theming/lib/Controller/ThemingController.php b/apps/theming/lib/Controller/ThemingController.php index 09b4a14f2b0..1eefb2e3dd7 100644 --- a/apps/theming/lib/Controller/ThemingController.php +++ b/apps/theming/lib/Controller/ThemingController.php @@ -32,9 +32,12 @@ use OCP\AppFramework\Controller; use OCP\AppFramework\Http; use OCP\AppFramework\Http\DataDownloadResponse; use OCP\AppFramework\Http\DataResponse; +use OCP\AppFramework\Http\NotFoundResponse; use OCP\AppFramework\Http\StreamResponse; use OCP\AppFramework\Utility\ITimeFactory; +use OCP\Files\File; use OCP\Files\IRootFolder; +use OCP\Files\NotFoundException; use OCP\IConfig; use OCP\IL10N; use OCP\IRequest; @@ -255,15 +258,17 @@ class ThemingController extends Controller { * @PublicPage * @NoCSRFRequired * - * @return StreamResponse|DataResponse + * @return StreamResponse|NotFoundResponse */ public function getLogo() { - $pathToLogo = $this->config->getSystemValue('datadirectory', \OC::$SERVERROOT . '/data/') . '/themedinstancelogo'; - if(!file_exists($pathToLogo)) { - return new DataResponse(); + try { + /** @var File $file */ + $file = $this->rootFolder->get('themedinstancelogo'); + } catch (NotFoundException $e) { + return new NotFoundResponse(); } - $response = new Http\StreamResponse($pathToLogo); + $response = new Http\StreamResponse($file->fopen('r')); $response->cacheFor(3600); $response->addHeader('Expires', date(\DateTime::RFC2822, $this->timeFactory->getTime())); $response->addHeader('Content-Disposition', 'attachment'); @@ -276,15 +281,17 @@ class ThemingController extends Controller { * @PublicPage * @NoCSRFRequired * - * @return StreamResponse|DataResponse + * @return StreamResponse|NotFoundResponse */ public function getLoginBackground() { - $pathToLogo = $this->config->getSystemValue('datadirectory', \OC::$SERVERROOT . '/data/') . '/themedbackgroundlogo'; - if(!file_exists($pathToLogo)) { - return new DataResponse(); + try { + /** @var File $file */ + $file = $this->rootFolder->get('themedbackgroundlogo'); + } catch (NotFoundException $e) { + return new NotFoundResponse(); } - $response = new StreamResponse($pathToLogo); + $response = new StreamResponse($file->fopen('r')); $response->cacheFor(3600); $response->addHeader('Expires', date(\DateTime::RFC2822, $this->timeFactory->getTime())); $response->addHeader('Content-Disposition', 'attachment'); |