diff options
author | Cash Costello <cash.costello@gmail.com> | 2009-12-11 12:54:14 +0000 |
---|---|---|
committer | Cash Costello <cash.costello@gmail.com> | 2009-12-11 12:54:14 +0000 |
commit | 58fd575a7b28936455baea2856b1d5613d29b477 (patch) | |
tree | e338be339d9a966eeda8b63a3d5fa2d58cb8f34a /pages/download.php | |
parent | 3bd5e571364385cb93a93b8526e1e90e56db7b49 (diff) | |
download | elgg-58fd575a7b28936455baea2856b1d5613d29b477.tar.gz elgg-58fd575a7b28936455baea2856b1d5613d29b477.tar.bz2 |
working on adding rss feeds for all listing pages
Diffstat (limited to 'pages/download.php')
-rw-r--r-- | pages/download.php | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/pages/download.php b/pages/download.php new file mode 100644 index 000000000..f5530cebc --- /dev/null +++ b/pages/download.php @@ -0,0 +1,52 @@ +<?php
+ /**
+ * Tidypics Download Photos
+ *
+ * do not call this directly - call through page handler
+ */
+
+ global $CONFIG;
+
+ $file_guid = (int) get_input("file_guid");
+ $file = get_entity($file_guid);
+
+ $type = get_input("type");
+
+ if ($file) {
+ $filename = $file->originalfilename;
+ $mime = $file->mimetype;
+
+ header("Content-Type: $mime");
+ if ($type == "inline")
+ header("Content-Disposition: inline; filename=\"$filename\"");
+ else
+ header("Content-Disposition: attachment; filename=\"$filename\"");
+
+
+ $readfile = new ElggFile($file_guid);
+ $readfile->owner_guid = $file->owner_guid;
+
+ $contents = $readfile->grabFile();
+
+ if (empty($contents)) {
+ echo file_get_contents(dirname(dirname(__FILE__)) . "/graphics/image_error_large.png" );
+ } else {
+
+ // expires every 60 days
+ $expires = 60 * 60*60*24;
+
+ header("Content-Length: " . strlen($contents));
+ header("Cache-Control: public", true);
+ header("Pragma: public", true);
+ header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $expires) . ' GMT', true);
+
+
+ echo $contents;
+ }
+
+ exit;
+ }
+ else
+ register_error(elgg_echo("image:downloadfailed"));
+
+?>
\ No newline at end of file |