Inutile de regarder les arguments, les options sont dans le postscript.

+ typo, orth, esthtisme...

darcs-hash:20050708093505-061a7-a3d78182c9289c271e99c265bd4a4a8f0ba4b2cb.gz
This commit is contained in:
rozel 2005-07-08 11:35:05 +02:00
parent 5943070bd1
commit ec786fb962
2 changed files with 16 additions and 20 deletions

View file

@ -43,7 +43,7 @@ To = u"%s <%s>" % (utilisateur.Nom(), adrmail)
## 3) Calcul du prix de l'impression : ## 3) Calcul du prix de l'impression :
prix = crans_backend.calcul_prix(nom_fic,sys.argv) prix = crans_backend.calcul_prix(nom_fic)
## 4) Formulation du mail au vue des resultats ## 4) Formulation du mail au vue des resultats

View file

@ -35,7 +35,7 @@ To = u"%s <%s>" % (utilisateur.Nom(), adrmail)
## Calcul du prix de l'impression : ## Calcul du prix de l'impression :
prix = crans_backend.calcul_prix(nom_fic,sys.argv) prix = crans_backend.calcul_prix(nom_fic)
## Préparation des mails ## Préparation des mails
@ -60,9 +60,7 @@ if prix.erreur=="Taille invalide":
error = u""" error = u"""
Le format de papier que vous avez choisi (%(taille)s) n'est pas valide. Le format de papier que vous avez choisi (%(taille)s) n'est pas valide.
Cela ne va pas etre possible d'imprimer ce document sur Laserjet. Cela ne va pas être possible d'imprimer ce document sur Laserjet.
Rappel : Si vous utilisez lp, il faut définir l'option PageSize
""" % {'taille' : prix.taille} """ % {'taille' : prix.taille}
# On loggue l'erreur # On loggue l'erreur
sys.stderr.write(("ERROR: Erreur : utilisateur : %s, format invalide : %s\n" % (utilisateur.Nom(), prix.taille)).encode('latin-1')) sys.stderr.write(("ERROR: Erreur : utilisateur : %s, format invalide : %s\n" % (utilisateur.Nom(), prix.taille)).encode('latin-1'))
@ -100,17 +98,17 @@ L'imprimante Laserjet
# Tout est OK, on imprime # Tout est OK, on imprime
else: else:
try: try:
#Envoi du fichier a l'imprimante # Envoi du fichier à l'imprimante
nom_fic2=tempfile.mktemp() nom_fic2=tempfile.mktemp()
if prix.recto_v=='Recto': if prix.recto_v=='Recto':
sys.stderr.write("DEBUG: Simple recto, on inverse juste l'ordre.\n" ) sys.stderr.write("DEBUG: Simple recto, on inverse juste l'ordre.\n" )
os.system("cp %s %s " % (nom_fic, nom_fic2)) os.system("cp %s %s" % (nom_fic, nom_fic2))
os.system("psselect -r %s > %s " % (nom_fic, nom_fic2)) os.system("psselect -r %s > %s" % (nom_fic, nom_fic2))
elif prix.faces==1: elif prix.faces==1:
sys.stderr.write("DEBUG: Une seule face.\n" ) sys.stderr.write("DEBUG: Une seule face.\n" )
os.system("cp %s %s " % (nom_fic, nom_fic2)) os.system("cp %s %s " % (nom_fic, nom_fic2))
else: else:
sys.stderr.write("DEBUG: recto-verso on permute deux a deux.\n" ) sys.stderr.write("DEBUG: Recto-verso on permute deux a deux.\n" )
if(prix.faces%2 ==1): if(prix.faces%2 ==1):
sys.stderr.write("DEBUG: nombre de faces impair..\n" ) sys.stderr.write("DEBUG: nombre de faces impair..\n" )
prix.faces+=1 prix.faces+=1
@ -126,8 +124,7 @@ else:
os.system("cp %s %s " % (nom_fic, nom_fic2)) os.system("cp %s %s " % (nom_fic, nom_fic2))
os.system("psselect -p%s %s > %s 2>/dev/null" % (liste_pages, nom_fic, nom_fic2)) os.system("psselect -p%s %s > %s 2>/dev/null" % (liste_pages, nom_fic, nom_fic2))
sys.stderr.write("DEBUG: Envoi du fichier a l'imprimante.\n" ) sys.stderr.write("DEBUG: Envoi du fichier à l'imprimante.\n" )
imprimante=pjl_comm.hp9500() imprimante=pjl_comm.hp9500()
imprimante.cx_open() imprimante.cx_open()
imprimante.pjl_command('USTATUS PAGE = ON') imprimante.pjl_command('USTATUS PAGE = ON')
@ -137,20 +134,19 @@ else:
os.system("mv %s /tmp/last_printed.ps" % nom_fic2) os.system("mv %s /tmp/last_printed.ps" % nom_fic2)
os.system("chmod 644 /tmp/last_printed.ps") os.system("chmod 644 /tmp/last_printed.ps")
message=imprimante.pjl_read()
i=0 i=0
sys.stderr.write("DEBUG: Message de l'imprimante : \n%s\n" %message ) message=""
sys.stderr.write("DEBUG: Messages de l'imprimante :\n")
while(message.find("PAGES=")==-1 and i<200): while(message.find("PAGES=")==-1 and i<200):
message=imprimante.pjl_read() message=imprimante.pjl_read()
sys.stderr.write("DEBUG: Message : %s\n" %message ) sys.stderr.write("DEBUG: %s\n" % message)
sys.stderr.write("DEBUG: Impression non terminée..\n" ) i+=1
i=i+1
time.sleep(2) time.sleep(2)
if i==200: if i==200:
sys.stderr.write("ERROR: Impression arretee car lancee depuis 400s...\n") sys.stderr.write("ERROR: Impression arrêtée car lancée depuis 400s...\n")
else: else:
sys.stderr.write("DEBUG: Impression terminée temporisation de 20s...\n") sys.stderr.write("DEBUG: Impression terminée, temporisation de 20s...\n")
time.sleep(10) time.sleep(10)
imprimante.cx_close() imprimante.cx_close()
time.sleep(10) time.sleep(10)
@ -223,8 +219,8 @@ L'imprimante Laserjet
sys.stderr.write("DEBUG: Mail envoye ; Fin de l'impression...\n" ) sys.stderr.write("DEBUG: Mail envoye ; Fin de l'impression...\n" )
except: except:
sys.stderr.write("ERROR: Erreur : Probleme d'impression\n" ) sys.stderr.write("ERROR: Erreur : Problème d'impression\n" )
crans_backend.send_email(prix.From, To, sujet, mail_err % {'erreur' : u"Le fichier n'a pu être imprimé.\n Veuillez réessayer plus tard.\n"} ) crans_backend.send_email(prix.From, To, sujet, mail_err % {'erreur' : u"Le fichier n'a pu être imprimé.\nVeuillez réessayer plus tard.\n"} )
# Report de bug # Report de bug
import traceback import traceback
from cStringIO import StringIO from cStringIO import StringIO