gamutable/action/pdf_gamutable.php
tofulm f2272fe2c6 On gere correctement l'envoi du json complet ou seulement ce qui est
affiché, attention , il faut gerer la conf de php correctement, cf
readme.
On change le nom du fichier, plus besoin qu'il soit hashé maintenant,
car un job le supprimera
2022-09-27 21:11:34 +02:00

60 lines
1.3 KiB
PHP

<?php
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
function action_pdf_gamutable_dist() {
include_spip('inc/autoriser');
if (! autoriser('generer', 'gamutablepdf')) {
return false;
}
$fichierpdf = _request('fichierpdf') ?? '';
$namepdf = _request('namepdf') ?? $fichierpdf;
$header = _request('header') ?? [];
$Tdata = _request('Tdata') ?? [];
$arg = _request('arg') ?? '';
if (empty($header) or empty($fichierpdf)) {
exit;
}
$header = array_values($header);
$Tcles = [];
if (!empty($Tdata)) {
foreach ($Tdata as $d) {
$Tcles[] = $d['id'];
}
}
if (find_in_path('gamutable_pdf/' . $fichierpdf . '.html')) {
$set = ['arg' => $arg];
if (!empty($Tcles)) {
$set = array_merge($set, ['Tids' => $Tcles]);
}
$fond = recuperer_fond('gamutable_pdf/' . $fichierpdf, $set);
} else {
// TODO : gamutable pourrait venir avec un fichier de generation generique
// d'un pdf
}
include_spip('spipdf_options');
include_spip('inc/spipdf');
$namepdf = date("Y-m-d_H-i") . '_' . $namepdf;
$a = spipdf_html2pdf($fond);
$dir = sous_repertoire(_DIR_IMG . 'pdfgamutable');
$chemin = $dir . $namepdf . '.pdf' ;
file_put_contents($chemin, $a);
$id_job = job_queue_add(
'gamutable_clean_pdf',
'Gamutable nettoyer pdf',
[$chemin],
'inc/gamutable_clean_pdf',
false,
time() + 20
);
echo url_absolue($chemin);
}