diff --git a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py index a4b022d1e7..6431d09b7b 100644 --- a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py +++ b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py @@ -366,6 +366,13 @@ class CloudOutputDevice(UltimakerNetworkedPrinterOutputDevice): """ return "digital-factory.print-job.write.own" in self._account.permissions + @pyqtProperty(bool, constant = True) + def canReadPrinterDetails(self) -> bool: + """ + Whether this user can read the status of the printer. + """ + return "digital-factory.printer.read" in self._account.permissions + @property def clusterData(self) -> CloudClusterResponse: """Gets the cluster response from which this device was created.""" diff --git a/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterOutputDevice.py b/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterOutputDevice.py index e928e4f2ef..8f25df37db 100644 --- a/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterOutputDevice.py +++ b/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterOutputDevice.py @@ -213,6 +213,13 @@ class UltimakerNetworkedPrinterOutputDevice(NetworkedPrinterOutputDevice): """ return True + @pyqtProperty(bool, constant = True) + def canReadPrinterDetails(self) -> bool: + """ + Whether this user can read the status of the printer. + """ + return True + @pyqtSlot(name="openPrintJobControlPanel") def openPrintJobControlPanel(self) -> None: raise NotImplementedError("openPrintJobControlPanel must be implemented")