aboutsummaryrefslogtreecommitdiffstats
path: root/mod/attach.php
blob: 8676baa5890d715ed923db32d572a627a9abee44 (plain) (blame)
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
<?php

require_once('include/security.php');
require_once('include/attach.php');

function attach_init(&$a) {

	if(argc() < 2) {
		notice( t('Item not available.') . EOL);
		return;
	}

	$r = attach_by_hash(argv(1),((argc() > 2) ? intval(argv(2)) : 0));

	if(! $r['success']) {
		notice( $r['message'] . EOL);
		return;
	}

	header('Content-type: ' . $r['data']['filetype']);
	header('Content-disposition: attachment; filename=' . $r['data']['filename']);
	if($r['data']['flags'] & ATTACH_FLAG_OS ) {
		$stream = fopen($r['data']['data'],'rb');
		if($stream) {
			pipe_stream($stream,STDOUT);
			fclose($stream);
		}
	}
	else
		echo $r['data']['data'];
	killme();

}