Route pour appeler le PDF et dossier templates

This commit is contained in:
Vincent LAURENT 2021-09-21 23:44:34 +02:00
parent 3eef282ce6
commit 8b6f8c4e58
3 changed files with 17 additions and 8 deletions

23
app.php
View File

@ -1,7 +1,10 @@
<?php
$f3 = require(__DIR__.'/vendor/fatfree/lib/base.php');
$f3->set('DEBUG',1);
$f3->set('ROOT', __DIR__);
$f3->set('UI', $f3->get('ROOT')."/templates/");
$f3->set('UPLOADS', $f3->get('ROOT').'/data/');
if(!is_dir($f3->get('UPLOADS'))) {
@ -10,7 +13,7 @@ if(!is_dir($f3->get('UPLOADS'))) {
$f3->route('GET /',
function($f3) {
$f3->set('key', $f3->get('PARAMS.key'));
echo View::instance()->render('../index.html.php');
echo View::instance()->render('index.html.php');
}
);
$f3->route('POST /upload',
@ -33,7 +36,7 @@ $f3->route('POST /upload',
continue;
}
$key = substr(hash('sha256', hash_file('sha256', $file).uniqid()), 0, 24);
rename($file, $f3->get('UPLOADS').'/'.$key.'.pdf');
rename($file, $f3->get('UPLOADS').$key.'.pdf');
}
if(!$key) {
@ -46,7 +49,13 @@ $f3->route('POST /upload',
$f3->route('GET /@key',
function($f3) {
$f3->set('key', $f3->get('PARAMS.key'));
echo View::instance()->render('../pdf.html.php');
echo View::instance()->render('pdf.html.php');
}
);
$f3->route('GET /@key/pdf',
function($f3) {
$key = $f3->get('PARAMS.key');
Web::instance()->send($f3->get('UPLOADS').$key.'.pdf');
}
);
$f3->route('POST /image2svg',
@ -96,16 +105,16 @@ $f3->route('POST /@key/save',
$svgFiles = "";
foreach($svgData as $index => $svgItem) {
$svgFile = $f3->get('UPLOADS').'/'.$key.'_'.$index.'.svg';
$svgFile = $f3->get('UPLOADS').$key.'_'.$index.'.svg';
file_put_contents($svgFile, $svgItem);
$svgFiles .= $svgFile . " ";
}
shell_exec(sprintf("rsvg-convert -f pdf -o %s %s", $f3->get('UPLOADS').'/'.$key.'.svg.pdf', $svgFiles));
shell_exec(sprintf("pdftk %s multibackground %s output %s", $f3->get('UPLOADS').'/'.$key.'.svg.pdf', $f3->get('UPLOADS').'/'.$key.'.pdf', $f3->get('UPLOADS').'/'.$key.'_signe.pdf'));
shell_exec(sprintf("rsvg-convert -f pdf -o %s %s", $f3->get('UPLOADS').$key.'.svg.pdf', $svgFiles));
shell_exec(sprintf("pdftk %s multibackground %s output %s", $f3->get('UPLOADS').$key.'.svg.pdf', $f3->get('UPLOADS').$key.'.pdf', $f3->get('UPLOADS').$key.'_signe.pdf'));
Web::instance()->send($f3->get('UPLOADS').'/'.$key.'_signe.pdf');
Web::instance()->send($f3->get('UPLOADS').$key.'_signe.pdf');
}
);
$f3->run();

View File

@ -53,7 +53,7 @@
<script src="https://cdn.jsdelivr.net/npm/fabric@4.4.0/dist/fabric.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/signature_pad@3.0.0-beta.3/dist/signature_pad.umd.min.js"></script>
<script>
var url = '/data/<?php echo $key ?>.pdf';
var url = '/<?php echo $key ?>/pdf';
</script>
<script src="/js/app.js"></script>
<script src="/js/opentype.min.js"></script>