aboutsummaryrefslogtreecommitdiff
path: root/thumbnail.php
diff options
context:
space:
mode:
authorSem <sembrestels@riseup.net>2012-02-25 01:38:29 +0100
committerSem <sembrestels@riseup.net>2012-02-25 01:38:29 +0100
commit8ccd45aa77d290906fd42dcf5520a434303d4f68 (patch)
treef1cb3ccc39ce4e8a4ebafb68e414c0c963790dc6 /thumbnail.php
parent3a948fa46583e2419388d0c04e910f5d69721d3e (diff)
downloadelgg-8ccd45aa77d290906fd42dcf5520a434303d4f68.tar.gz
elgg-8ccd45aa77d290906fd42dcf5520a434303d4f68.tar.bz2
Saving thumbnails in server and serving them secure.
Diffstat (limited to 'thumbnail.php')
-rw-r--r--thumbnail.php35
1 files changed, 35 insertions, 0 deletions
diff --git a/thumbnail.php b/thumbnail.php
new file mode 100644
index 000000000..bd93f8e63
--- /dev/null
+++ b/thumbnail.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * Elgg file thumbnail
+ *
+ * @package ElggFile
+ */
+
+// Get engine
+require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");
+
+// Get videolist item GUID
+$guid = (int) get_input('guid', 0);
+
+// Get file thumbnail size
+$size = get_input('size', 'small');
+
+$item = get_entity($guid);
+if (!$item || $item->getSubtype() != "videolist_item") {
+ exit;
+}
+
+$readfile = new ElggFile();
+$readfile->owner_guid = $item->owner_guid;
+$readfile->setFilename("videolist/{$item->guid}.jpg");
+$contents = $readfile->grabFile();
+
+// caching images for 10 days
+header("Content-type: image/jpeg");
+header('Expires: ' . date('r',time() + 864000));
+header("Pragma: public", true);
+header("Cache-Control: public", true);
+header("Content-Length: " . strlen($contents));
+
+echo $contents;
+exit;