X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FTools%2FVerima%2FCreeDocuments%2FjobHtml.py;fp=src%2FTools%2FVerima%2FCreeDocuments%2FjobHtml.py;h=6a0d830abf18006668da37bbd805529912cdd82d;hb=2d16118826a6b7874b3093ed11284cfbb30a5efa;hp=0000000000000000000000000000000000000000;hpb=578963d0d280466665d5440859bb97e3ee8b6b3e;p=modules%2Fsmesh.git diff --git a/src/Tools/Verima/CreeDocuments/jobHtml.py b/src/Tools/Verima/CreeDocuments/jobHtml.py new file mode 100755 index 000000000..6a0d830ab --- /dev/null +++ b/src/Tools/Verima/CreeDocuments/jobHtml.py @@ -0,0 +1,119 @@ +#!/usr/bin/env python +# -*- coding: iso-8859-1 -*- + +import string +import os + +dir=os.path.dirname(os.path.abspath(__file__)) +FichierEntete=os.path.join(dir,'templatesHtml/entete.html') +FichierMailleur=os.path.join(dir,'templatesHtml/mailleur.html') +FichierJob=os.path.join(dir,'templatesHtml/job.html') +#FichierJob=os.path.join(dir,'templatesHtml/jobIncomplet.html') +FichierTableau=os.path.join(dir,'templatesHtml/tableau.html') +FichierLigne=os.path.join(dir,'templatesHtml/ligne.html') +FichierFinTableau=os.path.join(dir,'templatesHtml/tableauFin.html') +FichierSansGroupe=os.path.join(dir,'templatesHtml/sansGroupe.html') + + +def compte_all(texte, subString): + start = 0 + compte=0 + while True: + trouve = texte.find(subString, start) + if trouve == -1: return compte + compte+=1 + start = trouve + len(subString) + +def FormateTexte(texte,dico): + for clef in dico.keys(): + texteARemplacer="%"+str(clef)+"%" + remplacement=dico[clef] + if texte.find(texteARemplacer) < 0 : + print "impossible de remplacer ",texteARemplacer, "Pas d'occurence" + print remplacement + continue + if compte_all(texte,texteARemplacer) != 1 : + print "impossible de remplacer ",texteARemplacer, "trop d'occurences" + continue + remplacement=str(remplacement) + texte=texte.replace(texteARemplacer,remplacement) + return texte + +def FormateLigne(texte,nb): + texteARemplacer="2%" + remplacement=str(nb)+"%" + texte=texte.replace(texteARemplacer,remplacement) + return texte + +def CreeEntete(dico): + texteIni=open(FichierEntete).read() + texteRetour=FormateTexte(texteIni,dico) + return texteRetour + +def CreeMailleur(dico): + texteIni=open(FichierMailleur).read() + texteRetour=FormateTexte(texteIni,dico) + return texteRetour + +def CreeJob(dico): + texte=open(FichierJob).read() + texteRetour=FormateTexte(texte,dico) + return texteRetour + +def CreeMailleOuGroupe(dico,nb): + texteIni=open(FichierTableau).read() + + texteLigneIni=open(FichierLigne).read() + for i in range (2,nb+1) : + texteLigne=FormateLigne(texteLigneIni,i) + texteIni=texteIni+texteLigne + + texteRetour=FormateTexte(texteIni,dico) + + finTexte=open(FichierFinTableau).read() + texteFinal=texteRetour+finTexte + + return texteFinal + + +def EcritFichier(texte,filename): + fp=open(filename,'w') + fp.write(texte) + fp.close() + + +class Document: + + def __init__(self): + self.monTexte="" + self.dicoEntete={} + + def creeDocument(self,monFichier): + EcritFichier(self.monTexte,monFichier) + + def initEntete(self,version, versionRef,machine): + self.dicoEntete["VERSIONTEST"]=version + self.dicoEntete["VERSIONREF"]=versionRef + self.dicoEntete["MACHINE"]=machine + self.monTexte=CreeEntete(self.dicoEntete) + + def initMailleur(self,mailleurName): + dicoMailleur={} + dicoMailleur["MAILLEUR"]=mailleurName + texteMailleur=CreeMailleur(dicoMailleur) + self.monTexte+=texteMailleur + + def initJob(self,dicoJob): + texteMailleur=CreeJob(dicoJob) + self.monTexte+=texteMailleur + + def initMaille(self,dicoMaille,nbEntity): + texteMaille=CreeMailleOuGroupe(dicoMaille,nbEntity) + self.monTexte+=texteMaille + + def addNoGroup(self): + texteNoGroupe=open(FichierSansGroupe).read() + self.monTexte+=texteNoGroupe + + +#