3
header("Content-type: text/xml");
4
header("Cache-Control: no-cache, must-revalidate");
5
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
7
$ADEI->RequireClass("download");
11
$target = $_GET["target"];
12
$dm = new DOWNLOADMANAGER();
18
case "dlmanager_remove":
19
$dm->RemoveDownload();
21
case "dlmanager_list":
22
CreateDownloadXml($dm->GetDownloads(), $target);
27
case "dlmanager_sort":
30
case "dlmanager_details":
31
CreateDownloadXml($dm->GetDownloadDetails(), $target);
33
case "dlmanager_download":
36
case "dlmanager_toggleautodelete";
37
$download = $_GET["dl_id"];
38
$dm->ToggleAutodelete($download);
41
throw new ADEIException(translate("Error with download service: Target ( $target ) not valid"));
45
} catch(ADEIException $ex) {
47
throw new ADEIException(translate("Error with download service. Target: $target \n Error: $ex"));
50
function CreateDownloadXml($props, $mode) {
51
$XMLoutput = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
53
case 'dlmanager_list':
54
$XMLoutput .= "<result>\n";
55
foreach($props as $download) {
56
$XMLoutput .= "<download";
57
foreach($download as $key => $value) {
58
$XMLoutput .= " $key=\"$value\"";
60
$XMLoutput .= "></download>\n";
62
$XMLoutput .= "</result>";
64
case 'dlmanager_details':
65
$XMLoutput .= "<groups>";
66
if(!empty($props['props']['error'])) $XMLoutput .= "<error>{$props['props']['error']}</error>";
67
$XMLoutput .= "<window><from>{$props['props']['window']['from']}</from><to>{$props['props']['window']['to']}</to></window>"; //
68
$XMLoutput .= "<data><format>{$props['props']['format']}</format><size>{$props['props']['size']}</size></data>";
70
foreach($props['groups'] as $gid => $itemlist) {
71
$XMLoutput .= "<group>\n<gname>$gid</gname>";
72
foreach($itemlist as $item => $info){
73
$XMLoutput .= "<item>\n<itemid>{$info['id']}</itemid>\n<itemname>{$info['name']}</itemname>\n</item>\n";
75
$XMLoutput .= "</group>";
77
$XMLoutput .= "</groups>";