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>';
    }
Example #2
0
    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;
    }