Added last print time to popover on file list

This commit is contained in:
Jarek Szczepanski 2014-03-31 11:12:44 +02:00
parent 8cc8e45afd
commit 13e6070dd9
3 changed files with 18 additions and 5 deletions

View file

@ -417,6 +417,8 @@ class GcodeManager:
"date": val["last"]["date"],
"success": val["last"]["success"]
}
if "lastPrintTime" in val["last"] and val["last"]["lastPrintTime"] is not None:
last["lastPrintTime"] = val["last"]["lastPrintTime"]
prints = {
"success": val["success"],
"failure": val["failure"],
@ -448,7 +450,7 @@ class GcodeManager:
#~~ print job data
def printSucceeded(self, filename):
def printSucceeded(self, filename, printTime):
filename = self._getBasicFilename(filename)
absolutePath = self.getAbsolutePath(filename)
if absolutePath is None:
@ -460,10 +462,14 @@ class GcodeManager:
"date": time.time(),
"success": True
}
if printTime is not None:
metadata["prints"]["last"]["lastPrintTime"] = printTime
self.setFileMetadata(filename, metadata)
self._saveMetadata()
def printFailed(self, filename):
def printFailed(self, filename, printTime):
filename = self._getBasicFilename(filename)
absolutePath = self.getAbsolutePath(filename)
if absolutePath is None:
@ -475,6 +481,10 @@ class GcodeManager:
"date": time.time(),
"success": False
}
if printTime is not None:
metadata["prints"]["last"]["lastPrintTime"] = printTime
self.setFileMetadata(filename, metadata)
self._saveMetadata()

View file

@ -306,7 +306,7 @@ class Printer():
# mark print as failure
if self._selectedFile is not None:
self._gcodeManager.printFailed(self._selectedFile["filename"])
self._gcodeManager.printFailed(self._selectedFile["filename"], self._comm.getPrintTime())
payload = {
"file": self._selectedFile["filename"],
"origin": FileDestinations.LOCAL
@ -455,9 +455,9 @@ class Printer():
if self._comm is not None and oldState == self._comm.STATE_PRINTING:
if self._selectedFile is not None:
if state == self._comm.STATE_OPERATIONAL:
self._gcodeManager.printSucceeded(self._selectedFile["filename"])
self._gcodeManager.printSucceeded(self._selectedFile["filename"], self._comm.getPrintTime())
elif state == self._comm.STATE_CLOSED or state == self._comm.STATE_ERROR or state == self._comm.STATE_CLOSED_WITH_ERROR:
self._gcodeManager.printFailed(self._selectedFile["filename"])
self._gcodeManager.printFailed(self._selectedFile["filename"], self._comm.getPrintTime())
self._gcodeManager.resumeAnalysis() # printing done, put those cpu cycles to good use
elif self._comm is not None and state == self._comm.STATE_PRINTING:
self._gcodeManager.pauseAnalysis() # do not analyse gcode while printing

View file

@ -212,6 +212,9 @@ function GcodeFilesViewModel(printerStateViewModel, loginStateViewModel) {
if (data["prints"] && data["prints"]["last"]) {
output += "<p>";
output += "<strong>Last Print:</strong> <span class=\"" + (data["prints"]["last"]["success"] ? "text-success" : "text-error") + "\">" + formatDate(data["prints"]["last"]["date"]) + "</span>";
if (data["prints"]["last"]["lastPrintTime"]) {
output += "<br><strong>Last Print Time:</strong> <span class=\"" + (data["prints"]["last"]["success"] ? "text-success" : "text-error") + "\">" + formatDuration(data["prints"]["last"]["lastPrintTime"]) + "</span>";
}
output += "</p>";
}
return output;