Ajout de commentaire valide avec pydoc

darcs-hash:20060711185813-9e428-f72ed7e9cbf83f1f3129b0496e5bf5c07a069ae3.gz
This commit is contained in:
bobot 2006-07-11 20:58:13 +02:00
parent 4cce15b794
commit 5dc32794e4

View file

@ -43,6 +43,7 @@ class test:
################################################################################
class fichier_impression:
""" Interface pour la gestion d'un travaille d'impression """
nom_job = ''
nbr_pages = 1
nb_copies = 1
@ -73,7 +74,10 @@ class fichier_impression:
# la référence du temps unix (+-=1970)
job_id = None # champs pour de futures améliorations
def actualise_cout(self):
""" Actualise le champ cout
Leve l'erreur ErreurImpression si le calcul du cout ne c'est pas bien passe """
# Calcul du cout de l'impression :
retour = cout(self)
@ -87,20 +91,25 @@ class fichier_impression:
self.list_messages_admin.append('erreur_cout')
raise ErreurImpression(retour)
# Repond vrai si le solde est assez élevé.
def test_cout(self):
""" Repond vrai si le solde est assez élevé. """
if self.user_ldap == None:
self.user_ldap = utilisateur(self.user, False)
# /!\ decouvert est négatif.
return not (self.cout > (self.user_ldap.solde() - impression.decouvert))
def fait_payer(self):
""" Retire au solde de l'adherent la valeur de cout """
self.user_ldap = utilisateur(self.user, True)
self.user_ldap.solde(-self.cout, self.nom_job)
self.user_ldap.save()
return not (self.cout > (self.user_ldap.solde() - impression.decouvert))
def gen_code(self):
""" Genere le code et l'enregistre dans /var/impression/codes pour radius """
# Génération du code et écriture du code
rand=random.Random()
# Graine automatique avec le temps
@ -133,7 +142,9 @@ class fichier_impression:
self.code = code
self.list_messages_importants.append('code')
def impression(self):
""" Envoie l'impression a l'imprimante avec les parametres actuels """
# Envoi du fichier à CUPS
options =''
# Création de la liste d'options
@ -203,7 +214,9 @@ class fichier_impression:
openlog("impression")
syslog("lpr status:%d | rep: %s" % (status, rep))
def corrige(self):
""" Corrige les absurditees (ex transparents recto-verso) [obsolete] """
# Trouve le nombre de pages
self.nbr_pages = int(os.popen("pdfinfo %s | grep Pages " % (self.nom_fichier_pdf)).readline().split()[1])
# Corrige les aberrations
@ -224,7 +237,9 @@ class fichier_impression:
self.list_messages.append("Recto_verso 1 page")
self.recto_verso = False
def affiche_messages_html(self):
""" Creait le code html correspondant a un tableau contenant le code adequate [obsolete] """
body = ""
"""
@ -241,7 +256,13 @@ class fichier_impression:
body = string.join(self.list_messages_importants)
return "<p>%s</p>" % body
def enregistre_pdf(self, f_value, f_nom, dossier):
""" Enregistre un pdf dans le dossier dossier
Met a jour la variable nom_fichier_pdf
dossier = dossier de destination
f_value = le coprs du pdf
f_nom = obsolete (etait le prefixe du nom du fichier)"""
openlog("impression")
try:
(fd_fichier_desc, self.nom_fichier_desc) = tempfile.mkstemp(suffix='.desc', prefix='job', dir=dossier)
@ -260,7 +281,9 @@ class fichier_impression:
self.nbr_pages = int(os.popen("pdfinfo '%s' | grep Pages " % (self.nom_fichier_pdf)).readline().split()[1])
self.modif_epoch = time.time()
def sauve_desc(self):
""" Sauve les parametre du travaille d'impression dans le fichier nom_fichier_desc """
try:
file_obj_desc = open(self.nom_fichier_desc,'w')
for key in ("erreur_critique", "nom_job", "nbr_pages",
@ -274,7 +297,9 @@ class fichier_impression:
except Exception, inst :
raise ErreurImpression("class : erreur dans enregistrement du .desc %s : %s" % (self.nom_fichier_desc,str(inst)))
def read_desc(self):
""" Lit le fichier nom_fichier_desc et met a jour les variables """
try:
file_obj_desc = open(self.nom_fichier_desc, 'r')
ligne = file_obj_desc.readline()[0:-1]
@ -310,11 +335,12 @@ class fichier_impression:
syslog("class : %s a disparu" % self.nom_fichier_pdf)
def get_attr(self,key):
""" Fonction obsolete utilise avec cheetah """
return getattr(self,key)
def __repr__(self):
""" renvoie le string canonique de l'objet
fonction utilisé par print et str """
""" Cree le code html correspondant a un tableau contenant les informations pertinentes """
dict_contraire = { 'couleur' : 'Noir et Blanc',
'transparent' : 'Normal',
@ -361,6 +387,9 @@ class fichier_impression:
################################################################################
# Recuperation de lobjet ldap en lecture ou ecriture de l'adherent ayant le login user
# reprise du backend
# Leve l'erreur ErreurImpression si l'adherent n'existe pas
def utilisateur(user, rw):
""" Renvoie l'adherent qui imprime le job
* user est l'utilisateur (argument n°2 des paramètres passés au backend)
@ -392,7 +421,7 @@ def utilisateur(user, rw):
################################################################################
# Fonction auxilliaire de calcul du cout, reprise directement de l'ancien backend
def cout(fic_impr):
""" Calcule le pourcentage de couleur sur les pages
fic_impr est une instance de fichier_impression