From d4e05125c9a6da105e51300d95b18c0e2b34d0dc Mon Sep 17 00:00:00 2001 From: Daniel Berthereau Date: Mon, 18 Feb 2019 00:00:00 +0100 Subject: [PATCH] Fixed use of tiles (bug introduced in #020e0568). --- controllers/ImageController.php | 2 +- .../Controller/Action/Helper/TileInfo.php | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/controllers/ImageController.php b/controllers/ImageController.php index 32d7a320..1e33fe9b 100644 --- a/controllers/ImageController.php +++ b/controllers/ImageController.php @@ -624,7 +624,7 @@ protected function _usePreTiled($file, $transform) $tileInfo = $helper->tileInfo($file); if ($tileInfo) { $helper = new UniversalViewer_Controller_Action_Helper_TileServer(); - $tile = $this->tileServer($tileInfo, $transform); + $tile = $helper->tileServer($tileInfo, $transform); return $tile; } } diff --git a/libraries/UniversalViewer/Controller/Action/Helper/TileInfo.php b/libraries/UniversalViewer/Controller/Action/Helper/TileInfo.php index 041b5dee..234fdbfc 100644 --- a/libraries/UniversalViewer/Controller/Action/Helper/TileInfo.php +++ b/libraries/UniversalViewer/Controller/Action/Helper/TileInfo.php @@ -85,10 +85,21 @@ public function tileInfo(File $file) $url = get_option('openlayerszoom_tiles_web') ?: WEB_FILES . '/zoom_tiles'; $this->tileBaseUrl = $url; - $tilingData = $this->getTilingData($file->filename); + $tilingData = $this->getTilingData($this->baseFilename($file->filename)); return $tilingData; } + /** + * Get a filepath without extension, i.e. "/path/file.ext" to "/path/file". + * + * @return string + */ + protected function baseFilename($filepath) + { + $extension = pathinfo($filepath, PATHINFO_EXTENSION); + return strlen($extension) ? substr($filepath, 0, strrpos($filepath, '.')) : $filepath; + } + /** * Check if an image is zoomed and return its main data. *