* On se protge contre les noms de fichiers farfelus.
* On affiche le cot sur la page de garde. darcs-hash:20060203165336-68412-94f3fbbda6743fae96d2e76b636a23ee26ac9387.gz
This commit is contained in:
parent
ff2a5894c6
commit
53bb62fc81
1 changed files with 13 additions and 20 deletions
|
@ -85,12 +85,7 @@ class fichier_impression :
|
||||||
|
|
||||||
def fait_payer(self):
|
def fait_payer(self):
|
||||||
self.user_ldap = utilisateur(self.user,True)
|
self.user_ldap = utilisateur(self.user,True)
|
||||||
pdf = self.nom_fichier_pdf.split('/')[-1]
|
self.user_ldap.solde(-self.cout, self.nom_job)
|
||||||
if self.nom_job:
|
|
||||||
commentaire = '%s (%s)' % (self.nom_job, pdf)
|
|
||||||
else:
|
|
||||||
commentaire = pdf
|
|
||||||
self.user_ldap.solde(-self.cout, commentaire)
|
|
||||||
self.user_ldap.save()
|
self.user_ldap.save()
|
||||||
return not (self.cout > (self.user_ldap.solde() - impression.decouvert))
|
return not (self.cout > (self.user_ldap.solde() - impression.decouvert))
|
||||||
|
|
||||||
|
@ -148,6 +143,8 @@ class fichier_impression :
|
||||||
|
|
||||||
# Pour demander une page de garde
|
# Pour demander une page de garde
|
||||||
options += ' -o job-sheets=crans' #page de garde de type standard
|
options += ' -o job-sheets=crans' #page de garde de type standard
|
||||||
|
options += " -o job-billing=%.2f" % self.cout
|
||||||
|
|
||||||
if self.transparent :
|
if self.transparent :
|
||||||
options += ' -o InputSlot=Tray1 -o Media=Transparency'
|
options += ' -o InputSlot=Tray1 -o Media=Transparency'
|
||||||
if self.taille == 'A4':
|
if self.taille == 'A4':
|
||||||
|
@ -210,18 +207,14 @@ class fichier_impression :
|
||||||
return "<p>%s</p>" % body
|
return "<p>%s</p>" % body
|
||||||
|
|
||||||
def enregistre_pdf(self, f_value, f_nom, dossier):
|
def enregistre_pdf(self, f_value, f_nom, dossier):
|
||||||
f_nom = f_nom.translate(string.maketrans(string.punctuation +
|
(fd_fichier_desc, self.nom_fichier_desc) = tempfile.mkstemp(suffix='.desc', prefix='job', dir=dossier)
|
||||||
string.whitespace,
|
|
||||||
'_' * len(string.punctuation+string.whitespace)))
|
|
||||||
(fd_fichier_desc, self.nom_fichier_desc) = tempfile.mkstemp(suffix='.desc',
|
|
||||||
prefix=f_nom,
|
|
||||||
dir=dossier)
|
|
||||||
os.close(fd_fichier_desc)
|
os.close(fd_fichier_desc)
|
||||||
os.chmod(self.nom_fichier_desc, 33184)
|
self.nom_fichier_pdf = self.nom_fichier_desc.replace('.desc', '.pdf')
|
||||||
self.nom_fichier_pdf = "%s.pdf" % self.nom_fichier_desc[0:-5]
|
fd_fichier_pdf = open(self.nom_fichier_pdf, 'w')
|
||||||
file_obj_pdf = open(self.nom_fichier_pdf, 'w')
|
fd_fichier_pdf.write(f_value)
|
||||||
file_obj_pdf.write(f_value)
|
fd_fichier_pdf.close()
|
||||||
file_obj_pdf.close()
|
os.chmod(self.nom_fichier_pdf, 0640)
|
||||||
|
os.chmod(self.nom_fichier_desc, 0640)
|
||||||
self.nbr_pages = int(os.popen("pdfinfo '%s' | grep Pages " % (self.nom_fichier_pdf)).readline().split()[1])
|
self.nbr_pages = int(os.popen("pdfinfo '%s' | grep Pages " % (self.nom_fichier_pdf)).readline().split()[1])
|
||||||
self.modif_epoch = time.time()
|
self.modif_epoch = time.time()
|
||||||
|
|
||||||
|
@ -340,7 +333,7 @@ def utilisateur(user, rw):
|
||||||
sys.exit(0) # On conclue l'avant-impression sans stopper l'imprimante
|
sys.exit(0) # On conclue l'avant-impression sans stopper l'imprimante
|
||||||
|
|
||||||
adherent = res[0]
|
adherent = res[0]
|
||||||
sys.stderr.write("DEBUG: Adherent %s (aid=%d) recupere.\n" % (user, adherent.id()))
|
sys.stderr.write("DEBUG: Adherent %s (aid=%s) recupere.\n" % (user, adherent.id()))
|
||||||
return adherent
|
return adherent
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue