Salome HOME
Merge remote branch 'origin/V8_5_asterstudy'
[modules/smesh.git] / src / Tools / Verima / CreeDocuments / jobHtml.py
index 6a0d830abf18006668da37bbd805529912cdd82d..b64f63d4dbd8ab092ffec15fe880d716d2c15e06 100755 (executable)
@@ -1,18 +1,18 @@
-#!/usr/bin/env python
-# -*- coding: iso-8859-1 -*-
+#!/usr/bin/env python3
 
 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')
+adir=os.path.dirname(os.path.abspath(__file__))
+FichierEntete=os.path.join(adir,'templatesHtml/entete.html')
+FichierMaillageEntete=os.path.join(adir,'templatesHtml/maillageEntete.html')
+FichierJob=os.path.join(adir,'templatesHtml/job.html')
+FichierTableau=os.path.join(adir,'templatesHtml/tableau.html')
+FichierLigne=os.path.join(adir,'templatesHtml/ligne.html')
+FichierFinTableau=os.path.join(adir,'templatesHtml/tableauFin.html')
+FichierSansGroupe=os.path.join(adir,'templatesHtml/sansGroupe.html')
+FichierGroupeRatio=os.path.join(adir,'templatesHtml/groupeRatio.html')
+FichierGroupeTaille=os.path.join(adir,'templatesHtml/groupeTaille.html')
 
 
 def compte_all(texte, subString):
@@ -25,15 +25,15 @@ def compte_all(texte, subString):
         start = trouve + len(subString)
 
 def FormateTexte(texte,dico):
-    for clef in dico.keys():
+    for clef in dico:
         texteARemplacer="%"+str(clef)+"%"
         remplacement=dico[clef]
         if texte.find(texteARemplacer) < 0 :
-           print "impossible de remplacer ",texteARemplacer, "Pas d'occurence"
-           print remplacement
+           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"
+           print("impossible de remplacer ",texteARemplacer, "trop d'occurences")
            continue
         remplacement=str(remplacement)
         texte=texte.replace(texteARemplacer,remplacement)
@@ -46,23 +46,33 @@ def FormateLigne(texte,nb):
     return texte
 
 def CreeEntete(dico):
-    texteIni=open(FichierEntete).read()
+    texteIni=open(FichierEntete, 'r', encoding='utf8').read()
     texteRetour=FormateTexte(texteIni,dico)
     return texteRetour
 
-def CreeMailleur(dico):
-    texteIni=open(FichierMailleur).read()
+def CreeMaillage(dico):
+    texteIni=open(FichierMaillageEntete, 'r', encoding='utf8').read()
     texteRetour=FormateTexte(texteIni,dico)
     return texteRetour
 
 def CreeJob(dico):
-    texte=open(FichierJob).read()
+    texte=open(FichierJob, 'r', encoding='utf8').read()
+    texteRetour=FormateTexte(texte,dico)
+    return texteRetour
+
+def CreeGroupeTaille(dico):
+    texte=open(FichierGroupeTaille, 'r', encoding='utf8').read()
+    texteRetour=FormateTexte(texte,dico)
+    return texteRetour
+
+def CreeGroupeRatio(dico):
+    texte=open(FichierGroupeRatio, 'r', encoding='utf8').read()
     texteRetour=FormateTexte(texte,dico)
     return texteRetour
 
-def CreeMailleOuGroupe(dico,nb):
-    texteIni=open(FichierTableau).read()
 
+def CreeMailleOuGroupe(dico,nb):
+    texteIni=open(FichierTableau, 'r', encoding='utf8').read()
     texteLigneIni=open(FichierLigne).read()
     for i in range (2,nb+1) :
         texteLigne=FormateLigne(texteLigneIni,i)
@@ -70,16 +80,15 @@ def CreeMailleOuGroupe(dico,nb):
 
     texteRetour=FormateTexte(texteIni,dico)
 
-    finTexte=open(FichierFinTableau).read()
+    finTexte=open(FichierFinTableau, 'r', encoding='utf8').read()
     texteFinal=texteRetour+finTexte
 
     return texteFinal
 
 
 def EcritFichier(texte,filename):
-    fp=open(filename,'w')
-    fp.write(texte)
-    fp.close()
+    with open(filename,'w',encoding='utf8') as fp:
+        fp.write(texte)
     
 
 class Document:
@@ -91,17 +100,17 @@ class Document:
     def creeDocument(self,monFichier):
       EcritFichier(self.monTexte,monFichier)
 
-    def initEntete(self,version, versionRef,machine):
+    def initEntete(self,version, 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 initMaillage(self,maillageName,mailleurName,versionRefName,dicoMaillage):
+      dicoMaillage["MAILLEUR"]=mailleurName
+      dicoMaillage["MAILLAGE"]=maillageName
+      dicoMaillage["VERSIONREF"]=versionRefName
+      texteMaillageEntete=CreeMaillage(dicoMaillage)
+      self.monTexte+=texteMaillageEntete
 
     def initJob(self,dicoJob):
       texteMailleur=CreeJob(dicoJob)
@@ -115,5 +124,12 @@ class Document:
       texteNoGroupe=open(FichierSansGroupe).read()
       self.monTexte+=texteNoGroupe
 
+    def CreeGroupeTaille(self,dico):
+      texteGroupeTaille=CreeGroupeTaille(dico)
+      self.monTexte+=texteGroupeTaille
+
+    def CreeGroupeRatios(self,dico):
+      texteGroupeRatio=CreeGroupeRatio(dico)
+      self.monTexte+=texteGroupeRatio
 
 #