function gibModulPdf($args) { $dateiName = strtolower($args['stug']) . '_' . $args['pord'] . '_' . $args['spo'] . '_' . $args['lang'] . '.pdf'; $pfadKomplett = 'fileadmin/medien/fakultaeten/allgemein/modulbeschreibungen/' . strtolower($args['faku']); if (!is_dir($pfadKomplett)) { mkdir($pfadKomplett, 0755); } $pfadKomplett = 'fileadmin/medien/fakultaeten/allgemein/modulbeschreibungen/' . strtolower($args['faku']) . '/' . strtolower($args['stug']); if (!is_dir($pfadKomplett)) { mkdir($pfadKomplett, 0755); } $dateiPfad = $pfadKomplett . '/' . $dateiName; $documentRoot = t3lib_div::getIndpEnv(TYPO3_DOCUMENT_ROOT); $systemPfad = $documentRoot . '/' . $dateiPfad; $dateiVorhanden = file_exists($systemPfad); if ($dateiVorhanden) { $heute = date("Ymd", time()); $dateiDatum = date("Ymd", filectime($systemPfad)); if ($heute != $dateiDatum) { unlink($systemPfad); $dateiVorhanden = FALSE; } } if (!$dateiVorhanden) { $report = ''; $url1 = 'http://www3.hs-esslingen.de/qislsf/rds?state=modulBeschrGast&moduleParameter=modDescr&struct=auswahlBaum&language=' . $args['lang'] . '&next=wait.vm&lastState=modulBeschrGast' . '&nodeID=auswahlBaum|abschluss:abschl=' . $args['abs'] . '|studiengang:stg=' . $args['stug'] . '|stgSpecials:vert=,schwp=,kzfa=H,pversion=' . $args['spo'] . '|kontoOnTop:pordnr=' . $args['pord'] . '&asi=#' . 'auswahlBaum|abschluss:abschl=' . $args['abs'] . '|studiengang:stg=' . $args['stug'] . '|stgSpecials:vert=,schwp=,kzfa=H,pversion=' . $args['spo'] . '|kontoOnTop:pordnr=' . $args['pord']; $url1 = 'http://www3.hs-esslingen.de/qislsf/rds?state=modulBeschrGast&moduleParameter=modDescr'; if ($GLOBALS['TSFE']->fe_user->user['username'] == 'mmirsch') { t3lib_utility_Debug::debugInPopUpWindow($url1); } $redirectHeader = tx_he_tools_util::getURL($url1, 1, 'GET'); preg_match('#^.*JSESSIONID=(.*);.*#Uis', $redirectHeader, $matches); $sessionCookie = '&jsessionid==' . $matches[1]; $url2 = 'http://www3.hs-esslingen.de/qislsf/rds' . '?state=modulBeschrGast&createPDF=Y&create=blobs&moduleParameter=modDescr&struct=auswahlBaum&language=' . $args['lang'] . '&next=wait.vm&lastState=modulBeschrGast' . '&nodeID=auswahlBaum|abschluss:abschl=' . $args['abs'] . '|studiengang:stg=' . $args['stug'] . '|stgSpecials:vert=,schwp=,kzfa=H,pversion=' . $args['spo'] . '|kontoOnTop:pordnr=' . $args['pord'] . '&asi=#' . 'auswahlBaum|abschluss:abschl=' . $args['abs'] . '|studiengang:stg=' . $args['stug'] . '|stgSpecials:vert=,schwp=,kzfa=H,pversion=' . $args['spo'] . '|kontoOnTop:pordnr=' . $args['pord'] . $sessionCookie; $content = tx_he_tools_util::getURL($url2, 0, 'SET'); if ($GLOBALS['TSFE']->fe_user->user['username'] == 'mmirsch') { t3lib_utility_Debug::debugInPopUpWindow($matches); t3lib_utility_Debug::debugInPopUpWindow($url2); t3lib_utility_Debug::debugInPopUpWindow($content); exit; } /* $url2 = 'http://www3.hs-esslingen.de/qislsf/rds?state=modulBeschrGast&createPDF=Y&create=blobs&moduleParameter=modDescr&struct=auswahlBaum&language=' . $args['lang'] . '&next=wait.vm&lastState=modulBeschrGast' . '&nodeID=auswahlBaum|abschluss:abschl=' . $args['abs'] . '|studiengang:stg=' . $args['stug']. '|stgSpecials:vert=,schwp=,kzfa=H,pversion=' . $args['spo']. '|kontoOnTop:pordnr=' . $args['pord']. '&asi=#' . 'auswahlBaum|abschluss:abschl=' . $args['abs'] . '|studiengang:stg=' . $args['stug']. '|stgSpecials:vert=,schwp=,kzfa=H,pversion=' . $args['spo']. '|kontoOnTop:pordnr=' . $args['pord']; preg_match('#^(.*)(http://www3.hs-esslingen.de/qislsf/.*&asi=)(.*)#Uis',$redirectHeader,$matches); $urlNew = $matches[2]; $content = t3lib_div::getURL($urlNew, 1, true, $report); */ if ($report['error']) { $error = 'Fehler beim Einlesen des PDFs: "' . $dateiPfad . '"'; } else { file_put_contents($dateiPfad, $content); } } $datei = fopen($dateiPfad, 'rb'); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: no-cache'); header("Content-Type : application/pdf"); header("Content-Disposition: attachment; filename=" . $dateiName); while (!feof($datei)) { set_time_limit(60); echo fread($datei, 8192); } fclose($datei); exit; }