diff options
author | Olivier Paroz <github@oparoz.com> | 2015-06-18 13:24:15 +0200 |
---|---|---|
committer | Olivier Paroz <github@oparoz.com> | 2015-06-18 13:24:15 +0200 |
commit | 8193e1d7c15485663eeaaa1af1480f1f19004c32 (patch) | |
tree | 17feecb6a5c9cf0d00e46324bc688c7b52706a32 /lib/private/preview.php | |
parent | 13617a04751b980fbb8b601829d8ff32e55274c3 (diff) | |
download | nextcloud-server-8193e1d7c15485663eeaaa1af1480f1f19004c32.tar.gz nextcloud-server-8193e1d7c15485663eeaaa1af1480f1f19004c32.zip |
Move media type icon preview creation to its own method
Diffstat (limited to 'lib/private/preview.php')
-rw-r--r-- | lib/private/preview.php | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/lib/private/preview.php b/lib/private/preview.php index d8a9a3e1b78..3a341500e67 100644 --- a/lib/private/preview.php +++ b/lib/private/preview.php @@ -703,10 +703,7 @@ class Preview { // We still don't have a preview, so we send back the mime icon if (is_null($this->preview)) { - $this->preview = new \OC_Image(); - $mimeIconWebPath = \OC_Helper::mimetypeIcon($this->mimeType); - $mimeIconServerPath = str_replace(\OC::$WEBROOT, \OC::$SERVERROOT, $mimeIconWebPath); - $this->preview->loadFromFile($mimeIconServerPath); + $this->getMimeIcon(); } return $this->preview; @@ -1095,6 +1092,30 @@ class Preview { } /** + * Creates a mime icon preview of the asked dimensions + * + * This will paste the mime icon in the middle of an empty preview of the asked dimension + */ + private function getMimeIcon() { + $image = new \OC_Image(); + $mimeIconWebPath = \OC_Helper::mimetypeIcon($this->mimeType); + if (empty(\OC::$WEBROOT)) { + $mimeIconServerPath = \OC::$SERVERROOT . $mimeIconWebPath; + } else { + $mimeIconServerPath = str_replace(\OC::$WEBROOT, \OC::$SERVERROOT, $mimeIconWebPath); + } + $image->loadFromFile($mimeIconServerPath); + + $previewWidth = (int)$image->width(); + $previewHeight = (int)$image->height(); + $askedWidth = $this->getMaxX(); + $askedHeight = $this->getMaxY(); + $this->cropAndFill( + $image, $askedWidth, $askedHeight, $previewWidth, $previewHeight + ); + } + + /** * Stores the max preview in the cache * * @param string $previewPath path to the preview |