summaryrefslogtreecommitdiffstats
path: root/apps/dav/lib/CardDAV/PhotoCache.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/dav/lib/CardDAV/PhotoCache.php')
-rw-r--r--apps/dav/lib/CardDAV/PhotoCache.php29
1 files changed, 18 insertions, 11 deletions
diff --git a/apps/dav/lib/CardDAV/PhotoCache.php b/apps/dav/lib/CardDAV/PhotoCache.php
index 2f3cc66f1de..a252984d5fc 100644
--- a/apps/dav/lib/CardDAV/PhotoCache.php
+++ b/apps/dav/lib/CardDAV/PhotoCache.php
@@ -24,27 +24,32 @@
namespace OCA\DAV\CardDAV;
use OCP\Files\IAppData;
+use OCP\ILogger;
use OCP\Files\NotFoundException;
use OCP\Files\NotPermittedException;
use OCP\Files\SimpleFS\ISimpleFile;
use OCP\Files\SimpleFS\ISimpleFolder;
use Sabre\CardDAV\Card;
use Sabre\VObject\Property\Binary;
-use Sabre\VObject\Property\Uri;
use Sabre\VObject\Reader;
class PhotoCache {
- /** @var IAppData $appData */
+ /** @var IAppData */
protected $appData;
+ /** @var ILogger */
+ protected $logger;
+
/**
* PhotoCache constructor.
*
* @param IAppData $appData
+ * @param ILogger $logger
*/
- public function __construct(IAppData $appData) {
+ public function __construct(IAppData $appData, ILogger $logger) {
$this->appData = $appData;
+ $this->logger = $logger;
}
/**
@@ -135,13 +140,14 @@ class PhotoCache {
$ratio = $photo->width() / $photo->height();
if ($ratio < 1) {
- $ratio = 1/$ratio;
+ $ratio = 1 / $ratio;
}
- $size = (int)($size * $ratio);
+ $size = (int) ($size * $ratio);
if ($size !== -1) {
$photo->resize($size);
}
+
try {
$file = $folder->newFile($path);
$file->putContent($photo->data());
@@ -153,7 +159,6 @@ class PhotoCache {
return $file;
}
-
/**
* @param int $addressBookId
* @param string $cardUri
@@ -205,7 +210,7 @@ class PhotoCache {
return false;
}
if (substr_count($parsed['path'], ';') === 1) {
- list($type,) = explode(';', $parsed['path']);
+ list($type) = explode(';', $parsed['path']);
}
$val = file_get_contents($val);
} else {
@@ -219,16 +224,18 @@ class PhotoCache {
'image/gif',
];
- if(!in_array($type, $allowedContentTypes, true)) {
+ if (!in_array($type, $allowedContentTypes, true)) {
$type = 'application/octet-stream';
}
return [
'Content-Type' => $type,
- 'body' => $val
+ 'body' => $val
];
- } catch(\Exception $ex) {
-
+ } catch (\Exception $e) {
+ $this->logger->logException($ex, [
+ 'message' => 'Exception during vcard photo parsing'
+ ]);
}
return false;
}