Skip to content

Instantly share code, notes, and snippets.

@sui77
Created February 14, 2022 22:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sui77/c5fd4e99cb587e45b0fb5f1ca80782e3 to your computer and use it in GitHub Desktop.
Save sui77/c5fd4e99cb587e45b0fb5f1ca80782e3 to your computer and use it in GitHub Desktop.
divi.php
<?php
$date = $_GET['date'];
if (!preg_match('/^[0-9]{4}_[0-9]{2}_[0-9]{2}$/', $date)) {
exit('invalid date');
}
if (!copy('https://www.divi.de/joomlatools-files/docman-files/divi-intensivregister-tagesreports/DIVI-Intensivregister_Tagesreport_' . $date . '.pdf', '/tmp/divi' . $date . '.pdf')) {
exit('could not get pdf file');
}
exec('pdftotext /tmp/divi' . $date . '.pdf');
$f = file('/tmp/divi' . $date . '.txt');
header('Content-type: text/plain');
foreach ($f as $n => &$line) {
$line = trim($line);
if ($line == 'in intensivmedizinischer Behandlung') {
echo $line . ';' . string2num($f[$n + 2]) . ';' . string2num($f[$n + 4]) . "\n";
}
if ($line == 'davon invasiv beatmet') {
echo $line . ';' . string2num($f[$n + 2]) . ';' . string2num($f[$n + 4]) . "\n";
}
if ($line == 'Neuaufnahmen (Erstaufnahmen auf eine ITS*)') {
echo $line . ';;' . string2num($f[$n + 2]) . "\n";
}
if ($line == 'Verstorben auf ITS') {
echo $line . ';;' . string2num($f[$n + 3]) . "\n";
}
if ($line == 'Abgeschlossene ITS-Behandlungen') {
echo $line . ';' . string2num($f[$n + 2]) . ";\n";
}
if ($line == 'ECMO(3)') {
echo "aktuell belegt;" . string2num($f[$n+2]) . ";" . string2num($f[$n+4]) . ";" . string2num($f[$n+6]) .";" . string2num($f[$n+8]) .";" . string2num($f[$n+10]) . "\n";
echo "aktuell frei;" . string2num($f[$n+12]) . ";" . string2num($f[$n+14]) . ";" . string2num($f[$n+16]) .";" . string2num($f[$n+18]) .";" . string2num($f[$n+20]) . "\n";
}
if ($line == 'Notfallreserve') {
echo $line . ';' . string2num($f[$n + 2]) . "\n";
}
}
function string2num($s) {
$s = preg_replace('/\(.*?\)/', '', $s);
$s = preg_replace('/\[.*?\]/', '', $s);
$s = str_replace(['.', '+'], '', $s);
$s = trim($s);
return $s;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment