45,6 → 45,7 |
'jour' => 'jour', |
'recherche' => 'recherche', |
'id_mots_cles' => 'id_mots_cles', |
'mots_cles' => 'mots_cles', |
'debut' => 'debut', |
'limite' => 'limite', |
'format' => 'format', |
162,10 → 163,13 |
foreach($observations as &$obs) { |
$ids[] = $obs['id_observation']; |
} |
$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs'); |
$champs_supp_par_obs = $gestion_champs_etendus->consulterParLots($ids); |
$colonnes_champs_supp_par_obs = $gestion_champs_etendus->consulterClesParLots($ids); |
|
if($this->format != 'pdf') { |
$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs'); |
$champs_supp_par_obs = $gestion_champs_etendus->consulterParLots($ids); |
$colonnes_champs_supp_par_obs = $gestion_champs_etendus->consulterClesParLots($ids); |
} |
|
// TODO: tous les champs étendus et les paramètres supplémentaires devraient être passés en un seul |
// tableau (et chaque formateur csv, xls etc... pourrait également être dans une classe à part) |
switch($this->format) { |
178,12 → 182,8 |
$this->envoyerXls($xls); |
break; |
case 'pdf': |
if(count($observations) > 300) die('trop de données'); |
require_once('GenerateurPDF.php'); |
$pdf = new GenerateurPDF(); |
$pdf->export($observations); |
$pdf->pdf->Output('etiquettes.pdf', 'I'); |
die; |
$pdf = $this->convertirEnPdf($observations); |
$this->envoyerPdf($pdf); |
break; |
default: |
} |
212,7 → 212,7 |
exit; |
} |
|
private function convertirEnCsv($data, $colonnes, $colonnes_supplementaires, $champs_supplementaires = array()) |
private function convertirEnCsv(&$data, &$colonnes, &$colonnes_supplementaires, &$champs_supplementaires = array()) |
{ |
$chemin_temp = "php://temp"; |
$outstream = fopen($chemin_temp, 'r+'); |
243,7 → 243,7 |
return $csv; |
} |
|
private function convertirEnXls($data, $colonnes, $colonnes_supplementaires, $champs_supplementaires = array()) { |
private function convertirEnXls(&$data, &$colonnes, &$colonnes_supplementaires, &$champs_supplementaires = array()) { |
$this->extendSpreadsheetProductor = new SpreadsheetProductor(); |
$this->extendSpreadsheetProductor->initSpreadsheet(); |
|
290,6 → 290,19 |
return $workbook; |
} |
|
private function convertirEnPdf(&$observations) { |
if(count($observations) > 300) die('trop de données'); |
//require_once('GenerateurPDF.php'); |
$pdf = new GenerateurPDF(); |
$pdf->export($observations); |
return $pdf; |
} |
|
private function envoyerPdf(&$pdf) { |
$pdf->pdf->Output('etiquettes.pdf', 'I'); |
exit;; |
} |
|
private function traiterLigneEtendue(&$colonnes_etendues, &$ligne_champs_etendus) { |
$ligne_etendue_aplatie = $this->aplatirChampsEtendus($ligne_champs_etendus); |
$ligne_etendue_fmt = array(); |