blob: e4ad2e8556595b9403a1b087e84352f799fd6037 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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"));
?>
|