function werMachtWas() { $abteilungen = array(); $sqlAbteilungen = 'SELECT DISTINCT id,title FROM sixcms_article WHERE area_id = 510'; $abfrageAbteilungen = he_tools_db::six_sql_query($sqlAbteilungen); while ($datenAbteilungen = he_tools_db::six_sql_fetch_assoc($abfrageAbteilungen)) { $abteilungen[$datenAbteilungen[id]] = $datenAbteilungen[title]; } $werMachtWas = array(); $sqlWerMachtWas = 'SELECT id,title FROM sixcms_article WHERE area_id = 511 AND published=1 ORDER BY title'; $abfrageWerMachtWas = he_tools_db::six_sql_query($sqlWerMachtWas); while ($datenWerMachtWas = he_tools_db::six_sql_fetch_assoc($abfrageWerMachtWas)) { $werMachtWas[$datenWerMachtWas[id]] = $datenWerMachtWas[title]; } foreach ($werMachtWas as $id => $title) { $werMachtWasDaten[$id][titel] = $title; $sqlWerMachtWas = 'SELECT fieldname,value FROM sixcms_article_data WHERE article_id = ' . $id; $abfrageWerMachtWas = he_tools_db::six_sql_query($sqlWerMachtWas); while ($datenWerMachtWas = he_tools_db::six_sql_fetch_assoc($abfrageWerMachtWas)) { if (!empty($datenWerMachtWas[value])) { $werMachtWasDaten[$id][$datenWerMachtWas[fieldname]] = $datenWerMachtWas[value]; } } $sqlWerMachtWasRelAbteilung = 'SELECT rel_id FROM sixcms_article_article WHERE fieldname="rel_abteilung" AND article_id = ' . $id; $abfrageWerMachtWasRelAbteilung = he_tools_db::six_sql_query($sqlWerMachtWasRelAbteilung); while ($datenWerMachtWasRelAbteilung = he_tools_db::six_sql_fetch_assoc($abfrageWerMachtWasRelAbteilung)) { $werMachtWasDaten[$id][abteilungen][] = $datenWerMachtWasRelAbteilung[rel_id]; } $sqlWerMachtWasRelPersonen = 'SELECT username FROM sixcms_article INNER JOIN sixcms_article_article ON sixcms_article.id=sixcms_article_article.rel_id WHERE sixcms_article_article.fieldname="rel_personen" AND sixcms_article_article.article_id = ' . $id; $abfrageWerMachtWasRelPersonen = he_tools_db::six_sql_query($sqlWerMachtWasRelPersonen); while ($datenWerMachtWasRelPersonen = he_tools_db::six_sql_fetch_assoc($abfrageWerMachtWasRelPersonen)) { $werMachtWasDaten[$id][personen][] = $datenWerMachtWasRelPersonen[username]; } } return '<pre>' . print_r($werMachtWasDaten, true) . '</pre>'; }
function exportSixModule($spoVersion = '') { /* $datei = fopen($importDatei, "r"); if (!$datei) { return "Bitte erst eine Datei auswählen"; } $zugeordneteSixIds = array(); while ( ($importDaten = fgetcsv ($datei, 10000, ";")) !== FALSE ) { if (count($importDaten)>1) { $zugeordneteSixIds[$importDaten[1]] = array('modulCode'=>$importDaten[0], 'pordNr'=>$importDaten[2]); } } fclose($datei); */ he_tools_db::sixCmsConnect(); // Studiengänge abfragen $bedingung = 'SELECT title,id FROM sixcms_article WHERE published=1 AND area_id=35 ORDER BY title'; $abfrage = he_tools_db::six_sql_query($bedingung); $studiengaenge = array(); while ($werte = he_tools_db::six_sql_fetch_assoc($abfrage)) { if (preg_match('#master#i', $werte['title']) || preg_match('#(msc)#i', $werte['title']) || preg_match('#(mba)#i', $werte['title'])) { $master = TRUE; } else { $master = FALSE; } $studiengaenge[$werte['id']] = array('name' => iconv("UTF-8", "ISO-8859-1", $werte['title']), 'master' => $master); } // Fakultäten abfragen $bedingung = 'SELECT title,id FROM sixcms_article WHERE published=1 AND area_id=29 ORDER BY title'; $abfrage = he_tools_db::six_sql_query($bedingung); $fbs = array(); while ($werte = he_tools_db::six_sql_fetch_assoc($abfrage)) { $fbs[$werte['id']] = iconv("UTF-8", "ISO-8859-1", $werte['title']); } // Schwerpunkte abfragen $bedingung = 'SELECT title,id FROM sixcms_article WHERE published=1 AND area_id=386 ORDER BY title'; $abfrage = he_tools_db::six_sql_query($bedingung); $schwerpunkte = array(); while ($werte = he_tools_db::six_sql_fetch_assoc($abfrage)) { $schwerpunkte[$werte['id']] = iconv("UTF-8", "ISO-8859-1", $werte['title']); } if (empty($spoVersion)) { $whereSpo = 'TRUE'; } else { $whereSpo = 'spo.value=' . $spoVersion; } // Modulnamen abfragen $bedingung = 'SELECT sixcms_article.title,sixcms_article.id,sixcms_article_data.value as modulnummer FROM sixcms_article INNER JOIN sixcms_article_data ON sixcms_article.id=sixcms_article_data.article_id INNER JOIN sixcms_article_data as spo ON sixcms_article.id=spo.article_id WHERE sixcms_article.published=1 AND sixcms_article.area_id=336 AND sixcms_article_data.fieldname="modulnummer" AND spo.fieldname="spo_version" AND ' . $whereSpo . ' '; $abfrage = he_tools_db::six_sql_query($bedingung); $modulNamen = array(); while ($werte = he_tools_db::six_sql_fetch_assoc($abfrage)) { $modulNamen[$werte['id']] = array('name' => iconv("UTF-8", "ISO-8859-1", $werte['title']), 'nr' => $werte['modulnummer']); } // Alle Module abfragen $bedingung = 'SELECT sixcms_article.id,sixcms_article_data.value as semester_nr FROM sixcms_article INNER JOIN sixcms_article_data ON sixcms_article.id=sixcms_article_data.article_id WHERE sixcms_article.published=1 AND sixcms_article.area_id=389 AND sixcms_article_data.fieldname="semester_nr" '; $abfrage = he_tools_db::six_sql_query($bedingung); $modulzuordnung = array(); $sixIds = array_keys($zugeordneteSixIds); while ($modulzuordnung = he_tools_db::six_sql_fetch_assoc($abfrage)) { $modulId = $modulzuordnung['id']; $semester_nr = $modulzuordnung['semester_nr']; $bedingungFb = 'SELECT rel_id FROM sixcms_article_article WHERE article_id=' . $modulId . ' AND fieldname="rel_fachbereich" '; $abfrageFb = he_tools_db::six_sql_query($bedingungFb); if ($werteFb = he_tools_db::six_sql_fetch_assoc($abfrageFb)) { $fb = $werteFb['rel_id']; } $bedingungMod = 'SELECT rel_id FROM sixcms_article_article WHERE article_id=' . $modulId . ' AND fieldname="rel_module" '; $abfrageMod = he_tools_db::six_sql_query($bedingungMod); while ($werteMod = he_tools_db::six_sql_fetch_assoc($abfrageMod)) { $modul = $werteMod['rel_id']; // if (in_array($modul,$sixIds)) { $bedingungSp = 'SELECT rel_id FROM sixcms_article_article WHERE article_id=' . $modulId . ' AND fieldname="rel_schwerpunkte" '; $abfrageSp = he_tools_db::six_sql_query($bedingungSp); if ($werteSp = he_tools_db::six_sql_fetch_assoc($abfrageSp)) { $schwerpunkt = $werteSp['rel_id']; $bedingungSg = 'SELECT rel_id FROM sixcms_article_article WHERE article_id=' . $modulId . ' AND fieldname="rel_studiengaenge" '; $abfrageSg = he_tools_db::six_sql_query($bedingungSg); while ($werteSg = he_tools_db::six_sql_fetch_assoc($abfrageSg)) { $studiengang = $werteSg['rel_id']; if (!isset($fakultaeten[$fb][$studiengang][$schwerpunkt][$semester_nr])) { $fakultaeten[$fb][$studiengang][$schwerpunkt][$semester_nr] = array(); } if (!in_array($modul, $fakultaeten[$fb][$studiengang][$schwerpunkt][$semester_nr])) { array_push($fakultaeten[$fb][$studiengang][$schwerpunkt][$semester_nr], $modul); } } } else { $bedingungSg = 'SELECT rel_id FROM sixcms_article_article WHERE article_id=' . $modulId . ' AND fieldname="rel_studiengaenge" '; $abfrageSg = he_tools_db::six_sql_query($bedingungSg); while ($werteSg = he_tools_db::six_sql_fetch_assoc($abfrageSg)) { $studiengang = $werteSg['rel_id']; if (!isset($fakultaeten[$fb][$studiengang]['kein_schwerpunkt'][$semester_nr])) { $fakultaeten[$fb][$studiengang]['kein_schwerpunkt'][$semester_nr] = array(); } if (!in_array($modul, $fakultaeten[$fb][$studiengang]['kein_schwerpunkt'][$semester_nr])) { array_push($fakultaeten[$fb][$studiengang]['kein_schwerpunkt'][$semester_nr], $modul); } } // } } } } $ergebnis = iconv("UTF-8", "ISO-8859-1", '"Fakultät";"Abschluß";"Studiengang";"Schwerpunkt";"Semester";"Modulbezeichung";"Modul-Code";"Modul-Pordnr";"Six-ID Modul";"Teilleistung";"Six-ID Teilleistung";"Pordnummer"' . "\n"); $fakultaetenAusschluss = array('Graduate School', 'Soziale Arbeit, Gesundheit und Pflege'); foreach ($fakultaeten as $fb => $studiengangListe) { if (!in_array($fbs[$fb], $fakultaetenAusschluss)) { foreach ($studiengangListe as $stdg => $schwerpunktListe) { if ($studiengaenge[$stdg]['master']) { $abschluss = 'Master'; } else { $abschluss = 'Bachelor'; } foreach ($schwerpunktListe as $swp => $semester) { foreach ($semester as $semester_nummer => $module) { if ($swp == 'kein_schwerpunkt') { $schwerpunkt = ''; } else { $schwerpunkt = $schwerpunkte[$swp]; } foreach ($module as $modul) { $bedingungTeilleistungen = 'SELECT sixcms_article.id as sixId,sixcms_article.title as titel2, sixcms_article_data.value as titel FROM sixcms_article INNER JOIN sixcms_article_article on sixcms_article.id = sixcms_article_article.rel_id INNER JOIN sixcms_article_data on sixcms_article_data.article_id = sixcms_article.id WHERE sixcms_article_article.article_id = ' . $modul . ' AND sixcms_article_article.fieldname = "rel_modulbeschreibungen_leistungsnachweis" AND sixcms_article_data.fieldname = "lv_titel" ORDER BY sixcms_article_article.rel_id '; $abfrageTeilleistungen = he_tools_db::six_sql_query($bedingungTeilleistungen); $modulListe = array_keys($modulNamen); while ($werteTeilleistungen = he_tools_db::six_sql_fetch_assoc($abfrageTeilleistungen)) { if (!empty($werteTeilleistungen['titel'])) { $titel = strip_tags(iconv("UTF-8", "ISO-8859-1", $werteTeilleistungen['titel'])); } else { $titel = strip_tags(iconv("UTF-8", "ISO-8859-1", $werteTeilleistungen['titel2'])); } if (!empty($titel) && in_array($modul, $modulListe)) { $ergebnis .= '"' . $fbs[$fb] . '";"' . $abschluss . '";"' . $studiengaenge[$stdg]['name'] . '";"' . $schwerpunkt . '";"' . $semester_nummer . '";"' . $modulNamen[$modul]['name'] . '";"' . $zugeordneteSixIds[$modul]['modulCode'] . '";"' . $zugeordneteSixIds[$modul]['pordNr'] . '";"' . $modul . '";"' . $titel . '";"' . $werteTeilleistungen['sixId'] . '"' . "\n"; } } } } } } } } $jahr = date('Y'); $monat = date('m'); $tag = date('d'); $dateiname = 'module_six' . '_' . $jahr . '_' . $monat . '_' . $tag . '.csv'; header("Content-type: application/text"); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Content-Disposition: attachment; filename="' . $dateiname . '"'); header('Pragma: no-cache'); print $ergebnis; exit; }
public static function sixCmsConnect() { self::$sixSql = t3lib_div::makeInstance('t3lib_db'); self::$sixDB = self::$sixSql->sql_pconnect("rzlx2000.hs-esslingen.de", "rzlx33xxtypo3", "v7L4uJ3X2t2RRbpS") or die('Could not connect to SixCMS-Mysql server.'); self::$sixSql->sql_select_db("sixcms6_fhte", self::$sixDB) or die('Could not select database.'); }
protected function wetterDatenAusgeben($paramater) { /** @var tx_he_tools_jqplot $jqPlot */ $jqPlot = t3lib_div::makeInstance('tx_he_tools_jqplot'); /** @var t3lib_DB $db */ $db = he_tools_db::mysql2Connect(); $startZeitpunkt = $paramater['startdatum']; $endZeitpunkt = $paramater['enddatum']; $startZeitpunktSql = substr($startZeitpunkt, 6, 4) . '-' . substr($startZeitpunkt, 3, 2) . '-' . substr($startZeitpunkt, 0, 2) . ' 00:00:00'; $endZeitpunktSql = substr($endZeitpunkt, 6, 4) . '-' . substr($endZeitpunkt, 3, 2) . '-' . substr($endZeitpunkt, 0, 2) . ' 23:59:59'; $zeiteinhait = $paramater['zeiteinheit']; $whereZeiteinheit = ''; switch ($zeiteinhait) { case 'min_05': $whereZeiteinheit = ' AND (Zeitstempel LIKE "%:00:0%" OR Zeitstempel LIKE "%:05:0%" OR Zeitstempel LIKE "%:10:0%" OR ' . 'Zeitstempel LIKE "%:15:0%" OR Zeitstempel LIKE "%:20:0%" OR Zeitstempel LIKE "%:25:0%" OR ' . 'Zeitstempel LIKE "%:30:0%" OR Zeitstempel LIKE "%:35:0%" OR Zeitstempel LIKE "%:40:0%" OR ' . 'Zeitstempel LIKE "%:45:0%" OR Zeitstempel LIKE "%:50:0%" OR Zeitstempel LIKE "%:55:0%"' . ')'; break; case 'min_15': $whereZeiteinheit = ' AND (Zeitstempel LIKE "%:00:0%" OR Zeitstempel LIKE "%:15:0%" OR ' . 'Zeitstempel LIKE "%:30:0%" OR Zeitstempel LIKE "%:45:0%"' . ')'; break; case 'min_30': $whereZeiteinheit = ' AND (Zeitstempel LIKE "%:00:0%" OR Zeitstempel LIKE "%:30:0%"' . ')'; break; case 'hour': case 'day': case 'week': case 'month': case 'year': $whereZeiteinheit = ' AND Zeitstempel LIKE "%:00:0%"'; break; } // $whereZeiteinheit = ''; $abfrage = $db->sql_query('SELECT * FROM werte WHERE ID=' . $paramater['messwerte'] . ' AND Zeitstempel>= "' . $startZeitpunktSql . '" AND Zeitstempel<= "' . $endZeitpunktSql . '"' . $whereZeiteinheit); $messdaten = array(); while ($daten = $db->sql_fetch_assoc($abfrage)) { $zeit = substr($daten['Zeitstempel'], 11, 5); $zeit = substr($daten['Zeitstempel'], 0, 16); $messdaten[] = array('zeit' => $zeit, 'wert' => $daten['Wert']); } if ($startZeitpunkt != $endZeitpunkt) { $zeitraum = 'vom ' . $startZeitpunkt . ' bis ' . $endZeitpunkt; } else { $zeitraum = 'am ' . $startZeitpunkt; } $out = $jqPlot->temperaturKurve($zeitraum, $messdaten, $this->messwertIds[$paramater['messwerte']]); return $out; }
function gibModule($modulUebersichtId) { he_tools_db::sixCmsConnect(); $abfrageModule = 'SELECT rel_id FROM sixcms_article_article WHERE article_id=' . $modulUebersichtId . ' AND fieldname="rel_module" ORDER BY sort'; $resModule = he_tools_db::six_sql_query($abfrageModule); $module = array(); while ($rowModule = he_tools_db::six_sql_fetch_assoc($resModule)) { $module[] = $rowModule['rel_id']; } return $module; }