aboutsummaryrefslogtreecommitdiff
path: root/mod/file/thumbnail.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/file/thumbnail.php')
-rw-r--r--mod/file/thumbnail.php90
1 files changed, 39 insertions, 51 deletions
diff --git a/mod/file/thumbnail.php b/mod/file/thumbnail.php
index a150cce5a..851f13a8f 100644
--- a/mod/file/thumbnail.php
+++ b/mod/file/thumbnail.php
@@ -1,69 +1,57 @@
<?php
-
/**
* Elgg file thumbnail
*
* @package ElggFile
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
*/
// Get engine
require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");
// Get file GUID
-$file_guid = (int) get_input('file_guid',0);
+$file_guid = (int) get_input('file_guid', 0);
// Get file thumbnail size
-$size = get_input('size','small');
-
-// Get file entity
-if ($file = get_entity($file_guid)) {
-
- if ($file->getSubtype() == "file") {
+$size = get_input('size', 'small');
- $simpletype = $file->simpletype;
- if ($simpletype == "image") {
-
- // Get file thumbnail
- switch ($size) {
- case "small":
- $thumbfile = $file->thumbnail;
- break;
- case "medium":
- $thumbfile = $file->smallthumb;
- break;
- case "large":
- default:
- $thumbfile = $file->largethumb;
- break;
- }
+$file = get_entity($file_guid);
+if (!$file || $file->getSubtype() != "file") {
+ exit;
+}
- // Grab the file
- if ($thumbfile && !empty($thumbfile)) {
- $readfile = new ElggFile();
- $readfile->owner_guid = $file->owner_guid;
- $readfile->setFilename($thumbfile);
- $mime = $file->getMimeType();
- $contents = $readfile->grabFile();
-
- // caching images for 10 days
- header("Content-type: $mime");
- header('Expires: ' . date('r',time() + 864000));
- header("Pragma: public", true);
- header("Cache-Control: public", true);
- header("Content-Length: " . strlen($contents));
-
- echo $contents;
- exit;
-
- }
-
- }
+$simpletype = $file->simpletype;
+if ($simpletype == "image") {
+
+ // Get file thumbnail
+ switch ($size) {
+ case "small":
+ $thumbfile = $file->thumbnail;
+ break;
+ case "medium":
+ $thumbfile = $file->smallthumb;
+ break;
+ case "large":
+ default:
+ $thumbfile = $file->largethumb;
+ break;
+ }
+ // Grab the file
+ if ($thumbfile && !empty($thumbfile)) {
+ $readfile = new ElggFile();
+ $readfile->owner_guid = $file->owner_guid;
+ $readfile->setFilename($thumbfile);
+ $mime = $file->getMimeType();
+ $contents = $readfile->grabFile();
+
+ // caching images for 10 days
+ header("Content-type: $mime");
+ header('Expires: ' . gmdate('D, d M Y H:i:s \G\M\T', strtotime("+10 days")), true);
+ header("Pragma: public", true);
+ header("Cache-Control: public", true);
+ header("Content-Length: " . strlen($contents));
+
+ echo $contents;
+ exit;
}
-
}
-
-?> \ No newline at end of file