From e587fce1da0ed0fde721c0954c9f0cb672b10b6f Mon Sep 17 00:00:00 2001 From: Jan Holesovsky Date: Thu, 5 Nov 2015 11:54:39 +0100 Subject: [PATCH] cloudsuite: Construct more reasonable names + copy mtime. So that we are able to use the cloudsuite tile caching. --- controller/documentcontroller.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/controller/documentcontroller.php b/controller/documentcontroller.php index 7b07b98a..26384ed8 100644 --- a/controller/documentcontroller.php +++ b/controller/documentcontroller.php @@ -145,9 +145,19 @@ class DocumentController extends Controller{ $content = $view->file_get_contents($path); - $filename = tempnam(dirname(__DIR__) . self::CLOUDSUITE_TMP_PATH, 'ccs-'); + // copy; the first user gets a predictable filename so that cloudsuite + // uses the tile cache, others get tempnam + $filename = dirname(__DIR__) . self::CLOUDSUITE_TMP_PATH . 'ccs-' . $fileId; + if (file_exists($filename)) + $filename = tempnam(dirname(__DIR__) . self::CLOUDSUITE_TMP_PATH, 'ccs-' . $fileId . '-'); + file_put_contents($filename, $content); + + // set the needed attribs chmod($filename, 0660); + $modified = $view->filemtime($path); + if ($modified !== false) + touch($filename, $modified); return array( 'status' => 'success', 'filename' => $filename,