diff --git a/impression/impression_canon.py b/impression/impression_canon.py index fceceb09..a6175111 100755 --- a/impression/impression_canon.py +++ b/impression/impression_canon.py @@ -450,8 +450,10 @@ class impression: options += ' -o OutputBin=TrayA' options += ' -o Collate=StapleCollate -o StapleLocation=%s' % self._settings['agrafage'] - for i in range(self._settings['copies']): - cmd = "lpr %s %s" % (options, self._fichier) + + if not self._settings['livret'] and self._settings['agrafage'] in ['None', None]: + cmd = "lpr %s -# %d %s" % (options, self._settings['copies'], + self._fichier) (status, rep) = getstatusoutput(cmd) self.log.info("printing: %s" % cmd) if status != 0: @@ -459,3 +461,12 @@ class impression: self.log.error("lpr status:%d | rep: %s" % (status, rep)) raise PrintError, "%s \n status:%d rep: %s" % (cmp, status, rep) + else: + for i in range(self._settings['copies']): + cmd = "lpr %s %s" % (options, self._fichier) + (status, rep) = getstatusoutput(cmd) + self.log.info("printing: %s" % cmd) + if status != 0: + self.log.error("erreur impression") + self.log.error("lpr status:%d | rep: %s" % (status, rep)) + raise PrintError, "%s \n status:%d rep: %s" % (cmp, status, rep)