Correctly check for null values and don't try to access non existing keys
Fixes #544
This commit is contained in:
parent
4aee779385
commit
519429cebb
2 changed files with 14 additions and 19 deletions
|
|
@ -274,14 +274,12 @@ function GcodeFilesViewModel(printerStateViewModel, loginStateViewModel) {
|
|||
var filament = data["gcodeAnalysis"]["filament"];
|
||||
if (_.keys(filament).length == 1) {
|
||||
output += "Filament: " + formatFilament(data["gcodeAnalysis"]["filament"]["tool" + 0]) + "<br>";
|
||||
} else {
|
||||
var i = 0;
|
||||
do {
|
||||
if (filament["tool" + i].hasOwnProperty("length") && filament["tool" + i]["length"] > 0) {
|
||||
output += "Filament (Tool " + i + "): " + formatFilament(filament["tool" + i]) + "<br>";
|
||||
}
|
||||
i++;
|
||||
} while (filament.hasOwnProperty("tool" + i));
|
||||
} else if (_.keys(filament).length > 1) {
|
||||
for (var toolKey in filament) {
|
||||
if (!_.startsWith(toolKey, "tool") || !filament[toolKey] || !filament[toolKey].hasOwnProperty("length") || filament[toolKey]["length"] <= 0) continue;
|
||||
|
||||
output += "Filament (Tool " + toolKey.substr("tool".length) + "): " + formatFilament(filament[toolKey]) + "<br>";
|
||||
}
|
||||
}
|
||||
}
|
||||
output += "Estimated Print Time: " + formatDuration(data["gcodeAnalysis"]["estimatedPrintTime"]) + "<br>";
|
||||
|
|
|
|||
|
|
@ -130,17 +130,14 @@ function PrinterStateViewModel(loginStateViewModel) {
|
|||
|
||||
var result = [];
|
||||
if (data.filament && typeof(data.filament) == "object" && _.keys(data.filament).length > 0) {
|
||||
var i = 0;
|
||||
do {
|
||||
var key = "tool" + i;
|
||||
if (data.filament[key].hasOwnProperty("length") && data.filament[key].length > 0) {
|
||||
result.push({
|
||||
name: ko.observable("Tool " + i),
|
||||
data: ko.observable(data.filament[key])
|
||||
});
|
||||
}
|
||||
i++;
|
||||
} while (data.filament.hasOwnProperty("tool" + i));
|
||||
for (var key in data.filament) {
|
||||
if (!_.startsWith(key, "tool") || !data.filament[key] || !data.filament[key].hasOwnProperty("length") || data.filament[key].length <= 0) continue;
|
||||
|
||||
result.push({
|
||||
name: ko.observable("Tool " + key.substr("tool".length)),
|
||||
data: ko.observable(data.filament[key])
|
||||
});
|
||||
}
|
||||
}
|
||||
self.filament(result);
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue