forked from Netsyms/PackageHelper
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
3.4 KiB
JavaScript
101 lines
3.4 KiB
JavaScript
/*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
|
|
function uploadList() {
|
|
if (packages.length == 0) {
|
|
app.dialog.alert("Your list doesn't have anything to send.", "Empty List");
|
|
return;
|
|
}
|
|
app.dialog.preloader("Uploading...");
|
|
var uploadlistdialogopen = true;
|
|
$.ajax({
|
|
url: SETTINGS.sharelistapi,
|
|
dataType: 'json',
|
|
method: 'post',
|
|
data: {
|
|
packages: JSON.stringify(packages)
|
|
},
|
|
timeout: 15 * 1000,
|
|
success: function (resp) {
|
|
if (uploadlistdialogopen) {
|
|
app.dialog.close();
|
|
uploadlistdialogopen = false;
|
|
}
|
|
if (resp.status == "OK") {
|
|
JsBarcode("#listidbarcode", resp.uuid, {
|
|
format: "code128",
|
|
ean128: false,
|
|
width: 2,
|
|
height: 40
|
|
});
|
|
$("#listidbarcodeli").css("display", "");
|
|
} else {
|
|
app.dialog.alert(resp.message, "Error");
|
|
}
|
|
},
|
|
error: function (jqXHR, status, errorThrown) {
|
|
if (uploadlistdialogopen) {
|
|
app.dialog.close();
|
|
uploadlistdialogopen = false;
|
|
}
|
|
app.dialog.alert("There was a network or server issue while uploading the list. Please try again.", "Error");
|
|
}
|
|
});
|
|
}
|
|
|
|
function downloadItemList(code) {
|
|
if (typeof code == "undefined") {
|
|
code = $("#getlistidbox").val();
|
|
}
|
|
if (code.match(/^[a-f0-9]{10}$/i)) {
|
|
app.dialog.preloader("Downloading...");
|
|
var downloadlistdialogopen = true;
|
|
$.ajax({
|
|
url: SETTINGS.sharelistapi,
|
|
dataType: 'json',
|
|
method: 'get',
|
|
data: {
|
|
uuid: code
|
|
},
|
|
timeout: 15 * 1000,
|
|
success: function (resp) {
|
|
if (downloadlistdialogopen) {
|
|
app.dialog.close();
|
|
downloadlistdialogopen = false;
|
|
}
|
|
if (resp.status == "OK") {
|
|
var skipped = importPackageList(resp.packages);
|
|
if (skipped > 0) {
|
|
app.dialog.alert("List imported and merged with the existing one. " + skipped + " items already existed locally and were skipped. Verify their delivery status manually.", "Import Complete");
|
|
} else {
|
|
app.dialog.alert("List imported and merged with the existing one.", "Import Complete");
|
|
}
|
|
} else {
|
|
app.dialog.alert(resp.message, "Error");
|
|
}
|
|
},
|
|
error: function (jqXHR, status, errorThrown) {
|
|
if (downloadlistdialogopen) {
|
|
app.dialog.close();
|
|
downloadlistdialogopen = false;
|
|
}
|
|
app.dialog.alert("There was a network or server issue while downloading the list. Please try again.", "Error");
|
|
}
|
|
});
|
|
} else {
|
|
app.dialog.alert("That's not a valid list ID.", "Error");
|
|
}
|
|
}
|
|
|
|
function scanListIDBarcode() {
|
|
scanBarcode(function (code) {
|
|
playSound("scan");
|
|
downloadItemList(code);
|
|
}, function (error) {
|
|
app.dialog.alert(error, "Error");
|
|
});
|
|
} |