allow overriding success/fail url in diskmaps
This commit is contained in:
@@ -5,9 +5,10 @@ var wtvdl = new WTVDisk(minisrv_config, service_name);
|
|||||||
|
|
||||||
var force_update = (request_headers.query.force == "true") ? true : false;
|
var force_update = (request_headers.query.force == "true") ? true : false;
|
||||||
var no_delete = (request_headers.query.dont_delete_files == "true") ? true : false;
|
var no_delete = (request_headers.query.dont_delete_files == "true") ? true : false;
|
||||||
|
var content_dir = "content/"
|
||||||
|
var diskmap_dir = content_dir + "diskmaps/";
|
||||||
|
|
||||||
if (request_headers['wtv-request-type'] == 'download') {
|
if (request_headers['wtv-request-type'] == 'download') {
|
||||||
var content_dir = "content/"
|
|
||||||
var diskmap_dir = content_dir + "diskmaps/";
|
|
||||||
|
|
||||||
function generateDownloadList(diskmap_group_name, update_list, diskmap_group_data) {
|
function generateDownloadList(diskmap_group_name, update_list, diskmap_group_data) {
|
||||||
wtvdl.reset();
|
wtvdl.reset();
|
||||||
@@ -316,8 +317,21 @@ if (request_headers['wtv-request-type'] == 'download') {
|
|||||||
if (minisrv_config.config.debug_flags.debug) console.error(" # " + service_name + ":/sync error", "missing query arguments");
|
if (minisrv_config.config.debug_flags.debug) console.error(" # " + service_name + ":/sync error", "missing query arguments");
|
||||||
}
|
}
|
||||||
} else if (request_headers.query.group && diskmap) {
|
} else if (request_headers.query.group && diskmap) {
|
||||||
var message = request_headers.query.message || "Retrieving files...";
|
var diskmap_json_file = null;
|
||||||
var main_message = request_headers.query.main_message || "Your receiver is downloading files.";
|
Object.keys(service_vaults).forEach(function (g) {
|
||||||
headers = "200 OK\nContent-Type: text/html\nwtv-expire-all: wtv-disk:";
|
if (diskmap_json_file != null) return;
|
||||||
data = wtvdl.getSyncPage(message, request_headers.query.group, diskmap, main_message, message, force_update, no_delete);
|
diskmap_json_file = service_vaults[g] + "/" + service_name + "/" + diskmap_dir + diskmap + ".json";
|
||||||
|
if (!fs.existsSync(diskmap_json_file)) diskmap_json_file = null;
|
||||||
|
});
|
||||||
|
var diskmap_data = JSON.parse(fs.readFileSync(diskmap_json_file).toString());
|
||||||
|
if (!diskmap_data[request_headers.query.group]) {
|
||||||
|
throw ("Invalid diskmap data (group does not match)");
|
||||||
|
}
|
||||||
|
diskmap_data = diskmap_data[request_headers.query.group];
|
||||||
|
var message = request_headers.query.message || diskmap_data.message || "Retrieving files...";
|
||||||
|
var main_message = request_headers.query.main_message || diskmap_data.main_message || "Your receiver is downloading files.";
|
||||||
|
var success_url = request_headers.query.success_url || diskmap_data.success_url || null;
|
||||||
|
var fail_url = request_headers.query.fail_url || diskmap_data.fail_url || null;
|
||||||
|
headers = "200 OK\nContent-Type: text/html\nwtv-expire-all: wtv-disk:\nwtv-noback-all: wtv-disk:";
|
||||||
|
data = wtvdl.getSyncPage(message, request_headers.query.group, diskmap, main_message, message, force_update, no_delete, success_url, fail_url);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user