summaryrefslogtreecommitdiff
path: root/src/functions.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/functions.php')
-rw-r--r--src/functions.php143
1 files changed, 71 insertions, 72 deletions
diff --git a/src/functions.php b/src/functions.php
index 1bbb40c..aaacb36 100644
--- a/src/functions.php
+++ b/src/functions.php
@@ -101,88 +101,87 @@ function rechercheClient(string $input, Clients $Client): array
101} 101}
102 102
103 103
104// remplacer par une classe Latex 104//~ function makeLatexAndPdfDocuments(Clients $Client = null, Prestations $Presta = null, $PrestaDetails = null)
105function makeLatexAndPdfDocuments(Clients $Client = null, Prestations $Presta = null, $PrestaDetails = null) 105//~ {
106{ 106 //~ $latex = '';
107 $latex = ''; 107 //~ $year = '';
108 $year = ''; 108 //~ $data = [];
109 $data = []; 109 //~ $latex_path = Config::$latex_path;
110 $latex_path = Config::$latex_path; 110 //~ $pdf_path = Config::$pdf_path;
111 $pdf_path = Config::$pdf_path;
112 111
113 // verso d'une enveloppe 112 //~ // verso d'une enveloppe
114 $latex = makeLatex('enveloppe_verso'); // pas de données transmises, elles sont dans la classe Config 113 //~ $latex = makeLatex('enveloppe_verso'); // pas de données transmises, elles sont dans la classe Config
115 $file_name = 'enveloppe_verso.tex'; 114 //~ $file_name = 'enveloppe_verso.tex';
116 makeFile($latex_path, $file_name, $latex); 115 //~ makeFile($latex_path, $file_name, $latex);
117 116
118 latexToPdf($latex_path, $file_name, $pdf_path); 117 //~ latexToPdf($latex_path, $file_name, $pdf_path);
119 118
120 119
121 if($Client !== null) 120 //~ if($Client !== null)
122 { 121 //~ {
123 $data = $Client->getAll(); 122 //~ $data = $Client->getAll();
124 123
125 // recto d'une enveloppe 124 //~ // recto d'une enveloppe
126 $latex_recto_path = $latex_path . 'enveloppes_recto/'; 125 //~ $latex_recto_path = $latex_path . 'enveloppes_recto/';
127 $pdf_recto_path = $pdf_path . 'enveloppes_recto/'; 126 //~ $pdf_recto_path = $pdf_path . 'enveloppes_recto/';
128 $data['code_postal_espaces'] = implode(' \ ', str_split($data['code_postal'])); // code postal avec 2 espaces entre chaque chiffre: 2 \ 9 \ 0 \ 0 \ 0 127 //~ $data['code_postal_espaces'] = implode(' \ ', str_split($data['code_postal'])); // code postal avec 2 espaces entre chaque chiffre: 2 \ 9 \ 0 \ 0 \ 0
129 128
130 $latex = makeLatex('enveloppe_recto', $data); // injection des variables 129 //~ $latex = makeLatex('enveloppe_recto', $data); // injection des variables
131 $file_name = $Client->getCodeClient() . '.tex'; 130 //~ $file_name = $Client->getCodeClient() . '.tex';
132 makeFolder($latex_recto_path); 131 //~ makeFolder($latex_recto_path);
133 makeFile($latex_recto_path, $file_name, $latex); 132 //~ makeFile($latex_recto_path, $file_name, $latex);
134 133
135 makeFolder($pdf_recto_path); 134 //~ makeFolder($pdf_recto_path);
136 latexToPdf($latex_recto_path, $file_name, $pdf_recto_path); 135 //~ latexToPdf($latex_recto_path, $file_name, $pdf_recto_path);
137 136
138 // facture, devis, location 137 //~ // facture, devis, location
139 if($Presta !== null && $PrestaDetails !== null) 138 //~ if($Presta !== null && $PrestaDetails !== null)
140 { 139 //~ {
141 $type = $Presta->getTypePresta(); 140 //~ $type = $Presta->getTypePresta();
142 $file_name = $type . '.tex'; 141 //~ $file_name = $type . '.tex';
143 if($type === 'facture' || $type === 'devis' || $type === 'location') 142 //~ if($type === 'facture' || $type === 'devis' || $type === 'location')
144 { 143 //~ {
145 $data = array_merge($data, $Presta->getAll()); 144 //~ $data = array_merge($data, $Presta->getAll());
146 $Date = new Dates($Presta->getDate()); // entrée = timestamp (doit être un "int"!!) 145 //~ $Date = new Dates($Presta->getDate()); // entrée = timestamp (doit être un "int"!!)
147 $year = $Date->getYear(); 146 //~ $year = $Date->getYear();
148 $latex_year_path = $latex_path . $year . '/'; // un sous-dossier par année 147 //~ $latex_year_path = $latex_path . $year . '/'; // un sous-dossier par année
149 $pdf_year_path = $pdf_path . $year . '/'; 148 //~ $pdf_year_path = $pdf_path . $year . '/';
150 $data = array_merge($data, $PrestaDetails->getAll()); 149 //~ $data = array_merge($data, $PrestaDetails->getAll());
151 150
152 $latex = makeLatex($type, $data, $Date); // injection des variables 151 //~ $latex = makeLatex($type, $data, $Date); // injection des variables
153 $file_name = $Presta->getCodePresta() . '.tex'; 152 //~ $file_name = $Presta->getCodePresta() . '.tex';
154 makeFolder($latex_year_path); 153 //~ makeFolder($latex_year_path);
155 makeFile($latex_year_path, $file_name, $latex); 154 //~ makeFile($latex_year_path, $file_name, $latex);
156 155
157 makeFolder($pdf_year_path); 156 //~ makeFolder($pdf_year_path);
158 latexToPdf($latex_year_path, $file_name, $pdf_year_path); 157 //~ latexToPdf($latex_year_path, $file_name, $pdf_year_path);
159 } 158 //~ }
160 elseif($type === 'cesu' || $type === 'non_vendue') 159 //~ elseif($type === 'cesu' || $type === 'non_vendue')
161 {} // pas de document 160 //~ {} // pas de document
162 else 161 //~ else
163 { 162 //~ {
164 echo "debug: erreur génération latex, type de prestation \n"; 163 //~ echo "debug: erreur génération latex, type de prestation \n";
165 return 0; 164 //~ return 0;
166 } 165 //~ }
167 } 166 //~ }
168 } 167 //~ }
169} 168//~ }
170 169
171function makeLatex(string $type, array $data = [], Dates $Date = null) 170//~ function makeLatex(string $type, array $data = [], Dates $Date = null)
172{ 171//~ {
173 $date = ''; 172 //~ $date = '';
174 if($Date != null) 173 //~ if($Date != null)
175 { 174 //~ {
176 $date = $Date->getDate(); 175 //~ $date = $Date->getDate();
177 $date = preg_replace('#\D#', '/', $date); // date avec des slashs / parce que j'aime bien 176 //~ $date = preg_replace('#\D#', '/', $date); // date avec des slashs / parce que j'aime bien
178 } 177 //~ }
179 178
180 // on obtient la variable $latex avec ob_get_clean() 179 //~ // on obtient la variable $latex avec ob_get_clean()
181 // le include() ici, c'est du génie ou c'est moche ou les deux? 180 //~ // le include() ici, c'est du génie ou c'est moche ou les deux?
182 // un nouveau fichier php est inséré à chaque itération 181 //~ // un nouveau fichier php est inséré à chaque itération
183 include('latex_templates/' . $type . '.php'); 182 //~ include('latex_templates/' . $type . '.php');
184 183
185 // on retourne le buffer 184 //~ // on retourne le buffer
186 // normallement le code PHP inséré avec include est nettoyé en quittant la fonction 185 //~ // normallement le code PHP inséré avec include est nettoyé en quittant la fonction
187 return($latex); 186 //~ return($latex);
188} 187//~ }