exec_SELECTgetRows('uid, tx_semantic_category', 'tt_content', sprintf("pid = %d && tx_semantic_category != 0", $GLOBALS["TSFE"]->id)); if($rows){ $showCategories = tx_semantic_brain::getCategories4Output(false); $neutralElements; $semElement; $hasSemanticContent = false; $semCategory = array(); $semElements = array(); if($showCategories){ foreach($showCategories as $key => $value){ $semCategory[] = $key; } } if(count($semCategory) == 0) $semCategory[0] = -1; $GLOBALS['TSFE']->register['semanticid'] = $semCategory[0]; foreach ($rows as $row) { if($row["tx_semantic_category"]){ $hasSemanticContent = true; if($row["tx_semantic_category"] == -1) $neutralElements[] = $row; else if($row["tx_semantic_category"] == $semCategory[0]) $semElement = $row; else{ $semElements[] = $row['uid']; } } } if($semElement){ if($neutralElements){ foreach($neutralElements as $neutralElement){ $semElements[] = $neutralElement['uid']; } } } if($hasSemanticContent){ $GLOBALS['TSFE']->register['semantic'] = count($semElements) ? ' uid NOT IN ('.implode(",", $semElements).')' : 'true'; } } //$statistik = self::getStatistik($userData); try{ mcrypt_generic_deinit($this->td); mcrypt_module_close($this->td); }catch(\Exception $e){} //return $statistik; } function getUserData(){ if($_COOKIE["dpsmtc"]){ if(strpos($_COOKIE["dpsmtc"], "%") !== false){ $_COOKIE["dpsmtc"] = urldecode($_COOKIE["dpsmtc"]); } if(strpos($_COOKIE["dpsmtc"], ":") !== false){ $userData = unserialize($_COOKIE["dpsmtc"]); }else{ $userData = unserialize($this->decrypt($_COOKIE["dpsmtc"])); } } else $userData = array(); return $userData; } function saveUserData($data){ $dataCrypt = $this->encrypt(serialize($data)); @setcookie("dpsmtc", $dataCrypt, intval(time()+631138519), '/'); } function getCurrentPageCat(){ for($i = count($GLOBALS["TSFE"]->rootLine)-1; $i >= 0; $i--){ $currentRow = $GLOBALS["TSFE"]->rootLine[$i]; $semanticCat = $currentRow["tx_semantic_category"]; if($semanticCat){ return $semanticCat; } } } function getCategoryData($id, $field="", $all=false, $orderby=""){ if($all == false){ $where = 'uid = "'.$id.'"'; }else{ $where = ""; } $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tx_dpsemanticsystem_domain_model_semanticcategory', $where, '', $orderby); if($all){ $returnArray = array(); if(mysqli_num_rows($res)){ while($row = mysqli_fetch_assoc($res)){ $returnArray[] = $row; } } return $returnArray; } $row = mysqli_fetch_assoc($res); if($field) return $row[$field]; return $row; } function saveTempDataToBrain($data){ if($data["temp"]["data"]){ $newData = self::calculateBrain($data["brain"], $data["temp"]); $data["brain"]["data"] = $newData; unset($data["temp"]["data"]); } return $data; } function calculateBrain($brainData, $tempData){ $newData = array(); $categoryData = self::getCategoryData(0, "", true); if(!$tempData["data"]) { return $brainData["data"]; } $tempData["data"] = self::calculatePercent($tempData["data"], false); if(!$brainData["data"]){ return self::fillArrayWithCategory($tempData["data"]); } $multiplikator = ($tempData["date"]-$brainData["date"])/8640000; if($multiplikator < 0.1) $multiplikator = 0.1; if($multiplikator > 3.65) $multiplikator = 3.65; $divisor = 1+$multiplikator; foreach ($categoryData as $value){ $key = intval($value["uid"]); if($tempData["data"][$key]){ $newData[$key] = $brainData["data"][$key] + ($tempData["data"][$key]*$multiplikator); }else if($brainData["data"][$key]){ $newData[$key] = $brainData["data"][$key]; }else{ $newData[$key] = 0; } } foreach ($newData as $key => $value){ $newData[$key] = $newData[$key] / $divisor; } return $newData; } function calculatePercent($data, $round=true){ $allClicks = array_sum($data); foreach ($data as $key => $value){ $percent = ($value/$allClicks * 100); if($round) $returnArray[$key] = round($percent , 2); else $returnArray[$key] = $percent; } return $returnArray; } function fillArrayWithCategory($data){ $categoryData = self::getCategoryData(0, "", true, "rand()"); foreach ($categoryData as $value){ $key = intval($value["uid"]); if(!$data[$key]) $data[$key] = 0; } return $data; } /* AUSGABE */ function getCategories4Output($shuffle=true){ $userData = self::getUserData(); $brainData = $userData["brain"]; $tempData = $userData["temp"]; $data = self::calculateBrain($brainData, $tempData); if(count($data)){ arsort($data); $returnArray = $data; }else if($shuffle){ $categoryData = self::getCategoryData(0, "", true); shuffle($categoryData); foreach ($categoryData as $value){ $returnArray[$value["uid"]] = 0; } } return $returnArray; } function getStatistik(){ $extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['dp_semanticsystem']); if(!$extConf["debug"]) return; if(!$GLOBALS['TSFE']->beUserLogin) return; if($GLOBALS["BE_USER"]->user["username"] != "dp") return; $data = self::getUserData(); $output = " "; $hilightColor = "A7C414"; $output .= '
'; $output .= 'Semantic Debugausgabe anzeigen/verstecken'; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $categoryArray = self::getCategories4Output(); if($categoryArray && ($data["brain"]["data"] || $data["temp"]["data"])){ $output .= ''; $output .= ''; $output .= ''; $count = 0; foreach ($categoryArray as $key => $value){ if($count < 7) $dataXMLEntries .= ""; $count++; } $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; if($data["brain"]["date"]) $output .= ''; else $output .= ''; $output .= ''; if($data["brain"]["data"]){ arsort($data["brain"]["data"]); foreach ($data["brain"]["data"] as $key => $value){ $output .= ''; $output .= ''; $output .= ''; $output .= ''; } }else{ $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; if($data["temp"]["date"]) $output .= ''; else $output .= ''; $output .= ''; if($data["temp"]["data"]){ arsort($data["temp"]["data"]); foreach ($data["temp"]["data"] as $key => $value){ $output .= ''; $output .= ''; $output .= ''; $output .= ''; } }else{ $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; $output .= '
'; /* FLASH CHART */ $dataXML = "$dataXMLEntries"; $xmlFile = fopen("typo3conf/ext/dp_semanticsystem/res/flashchart.xml", "w"); fwrite($xmlFile, $dataXML); fclose($xmlFile); $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId] .= ''; $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId] .= ''; return $output; } /** * Generates a hex string of $src * @param $src string String to be encrypted * @return void */ function encrypt($src) { $this->initCrypt(); srand(( double) microtime() * 1000000); $this->iv = mcrypt_create_iv($this->ks, MCRYPT_RAND); mcrypt_generic_init($this->td, $this->salt, $this->iv); $tmpStr = mcrypt_generic($this->td, $src); return bin2hex($this->iv.$tmpStr); } /** * Decrypts a hex string * @param $src string String to be decrypted * @return void */ function decrypt($src) { $this->initCrypt(); $corrected = preg_replace("[^0-9a-fA-F]", "", $src); $binenc = pack("H".strlen($corrected), $corrected); $this->iv = substr($binenc, 0, $this->ks); $binstr = substr($binenc, $this->ks); mcrypt_generic_init($this->td, $this->salt, $this->iv); $decrypted = mdecrypt_generic($this->td, $binstr); return trim($decrypted); } function initCrypt(){ if($this->td) return; $this->td = mcrypt_module_open('rijndael-256', '', 'ofb', ''); $this->ks = mcrypt_enc_get_key_size($this->td); $this->salt = substr(md5("!Doppelpack:66:Semantic!"), 0, $this->ks); } } ?>exec_SELECTgetRows('uid, tx_semantic_category', 'tt_content', sprintf("pid = %d && tx_semantic_category != 0", $GLOBALS["TSFE"]->id)); if($rows){ $showCategories = tx_semantic_brain::getCategories4Output(false); $neutralElements; $semElement; $hasSemanticContent = false; $semCategory = array(); $semElements = array(); if($showCategories){ foreach($showCategories as $key => $value){ $semCategory[] = $key; } } if(count($semCategory) == 0) $semCategory[0] = -1; $GLOBALS['TSFE']->register['semanticid'] = $semCategory[0]; foreach ($rows as $row) { if($row["tx_semantic_category"]){ $hasSemanticContent = true; if($row["tx_semantic_category"] == -1) $neutralElements[] = $row; else if($row["tx_semantic_category"] == $semCategory[0]) $semElement = $row; else{ $semElements[] = $row['uid']; } } } if($semElement){ if($neutralElements){ foreach($neutralElements as $neutralElement){ $semElements[] = $neutralElement['uid']; } } } if($hasSemanticContent){ $GLOBALS['TSFE']->register['semantic'] = count($semElements) ? ' uid NOT IN ('.implode(",", $semElements).')' : 'true'; } } //$statistik = self::getStatistik($userData); try{ mcrypt_generic_deinit($this->td); mcrypt_module_close($this->td); }catch(\Exception $e){} //return $statistik; } function getUserData(){ if($_COOKIE["dpsmtc"]){ if(strpos($_COOKIE["dpsmtc"], "%") !== false){ $_COOKIE["dpsmtc"] = urldecode($_COOKIE["dpsmtc"]); } if(strpos($_COOKIE["dpsmtc"], ":") !== false){ $userData = unserialize($_COOKIE["dpsmtc"]); }else{ $userData = unserialize($this->decrypt($_COOKIE["dpsmtc"])); } } else $userData = array(); return $userData; } function saveUserData($data){ $dataCrypt = $this->encrypt(serialize($data)); @setcookie("dpsmtc", $dataCrypt, intval(time()+631138519), '/'); } function getCurrentPageCat(){ for($i = count($GLOBALS["TSFE"]->rootLine)-1; $i >= 0; $i--){ $currentRow = $GLOBALS["TSFE"]->rootLine[$i]; $semanticCat = $currentRow["tx_semantic_category"]; if($semanticCat){ return $semanticCat; } } } function getCategoryData($id, $field="", $all=false, $orderby=""){ if($all == false){ $where = 'uid = "'.$id.'"'; }else{ $where = ""; } $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tx_dpsemanticsystem_domain_model_semanticcategory', $where, '', $orderby); if($all){ $returnArray = array(); if(mysqli_num_rows($res)){ while($row = mysqli_fetch_assoc($res)){ $returnArray[] = $row; } } return $returnArray; } $row = mysqli_fetch_assoc($res); if($field) return $row[$field]; return $row; } function saveTempDataToBrain($data){ if($data["temp"]["data"]){ $newData = self::calculateBrain($data["brain"], $data["temp"]); $data["brain"]["data"] = $newData; unset($data["temp"]["data"]); } return $data; } function calculateBrain($brainData, $tempData){ $newData = array(); $categoryData = self::getCategoryData(0, "", true); if(!$tempData["data"]) { return $brainData["data"]; } $tempData["data"] = self::calculatePercent($tempData["data"], false); if(!$brainData["data"]){ return self::fillArrayWithCategory($tempData["data"]); } $multiplikator = ($tempData["date"]-$brainData["date"])/8640000; if($multiplikator < 0.1) $multiplikator = 0.1; if($multiplikator > 3.65) $multiplikator = 3.65; $divisor = 1+$multiplikator; foreach ($categoryData as $value){ $key = intval($value["uid"]); if($tempData["data"][$key]){ $newData[$key] = $brainData["data"][$key] + ($tempData["data"][$key]*$multiplikator); }else if($brainData["data"][$key]){ $newData[$key] = $brainData["data"][$key]; }else{ $newData[$key] = 0; } } foreach ($newData as $key => $value){ $newData[$key] = $newData[$key] / $divisor; } return $newData; } function calculatePercent($data, $round=true){ $allClicks = array_sum($data); foreach ($data as $key => $value){ $percent = ($value/$allClicks * 100); if($round) $returnArray[$key] = round($percent , 2); else $returnArray[$key] = $percent; } return $returnArray; } function fillArrayWithCategory($data){ $categoryData = self::getCategoryData(0, "", true, "rand()"); foreach ($categoryData as $value){ $key = intval($value["uid"]); if(!$data[$key]) $data[$key] = 0; } return $data; } /* AUSGABE */ function getCategories4Output($shuffle=true){ $userData = self::getUserData(); $brainData = $userData["brain"]; $tempData = $userData["temp"]; $data = self::calculateBrain($brainData, $tempData); if(count($data)){ arsort($data); $returnArray = $data; }else if($shuffle){ $categoryData = self::getCategoryData(0, "", true); shuffle($categoryData); foreach ($categoryData as $value){ $returnArray[$value["uid"]] = 0; } } return $returnArray; } function getStatistik(){ $extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['dp_semanticsystem']); if(!$extConf["debug"]) return; if(!$GLOBALS['TSFE']->beUserLogin) return; if($GLOBALS["BE_USER"]->user["username"] != "dp") return; $data = self::getUserData(); $output = " "; $hilightColor = "A7C414"; $output .= '
'; $output .= 'Semantic Debugausgabe anzeigen/verstecken'; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $categoryArray = self::getCategories4Output(); if($categoryArray && ($data["brain"]["data"] || $data["temp"]["data"])){ $output .= ''; $output .= ''; $output .= ''; $count = 0; foreach ($categoryArray as $key => $value){ if($count < 7) $dataXMLEntries .= ""; $count++; } $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; if($data["brain"]["date"]) $output .= ''; else $output .= ''; $output .= ''; if($data["brain"]["data"]){ arsort($data["brain"]["data"]); foreach ($data["brain"]["data"] as $key => $value){ $output .= ''; $output .= ''; $output .= ''; $output .= ''; } }else{ $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; if($data["temp"]["date"]) $output .= ''; else $output .= ''; $output .= ''; if($data["temp"]["data"]){ arsort($data["temp"]["data"]); foreach ($data["temp"]["data"] as $key => $value){ $output .= ''; $output .= ''; $output .= ''; $output .= ''; } }else{ $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; $output .= '
'; /* FLASH CHART */ $dataXML = "$dataXMLEntries"; $xmlFile = fopen("typo3conf/ext/dp_semanticsystem/res/flashchart.xml", "w"); fwrite($xmlFile, $dataXML); fclose($xmlFile); $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId] .= ''; $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId] .= ''; return $output; } /** * Generates a hex string of $src * @param $src string String to be encrypted * @return void */ function encrypt($src) { $this->initCrypt(); srand(( double) microtime() * 1000000); $this->iv = mcrypt_create_iv($this->ks, MCRYPT_RAND); mcrypt_generic_init($this->td, $this->salt, $this->iv); $tmpStr = mcrypt_generic($this->td, $src); return bin2hex($this->iv.$tmpStr); } /** * Decrypts a hex string * @param $src string String to be decrypted * @return void */ function decrypt($src) { $this->initCrypt(); $corrected = preg_replace("[^0-9a-fA-F]", "", $src); $binenc = pack("H".strlen($corrected), $corrected); $this->iv = substr($binenc, 0, $this->ks); $binstr = substr($binenc, $this->ks); mcrypt_generic_init($this->td, $this->salt, $this->iv); $decrypted = mdecrypt_generic($this->td, $binstr); return trim($decrypted); } function initCrypt(){ if($this->td) return; $this->td = mcrypt_module_open('rijndael-256', '', 'ofb', ''); $this->ks = mcrypt_enc_get_key_size($this->td); $this->salt = substr(md5("!Doppelpack:66:Semantic!"), 0, $this->ks); } } ?>exec_SELECTgetRows('uid, tx_semantic_category', 'tt_content', sprintf("pid = %d && tx_semantic_category != 0", $GLOBALS["TSFE"]->id)); if($rows){ $showCategories = tx_semantic_brain::getCategories4Output(false); $neutralElements; $semElement; $hasSemanticContent = false; $semCategory = array(); $semElements = array(); if($showCategories){ foreach($showCategories as $key => $value){ $semCategory[] = $key; } } if(count($semCategory) == 0) $semCategory[0] = -1; $GLOBALS['TSFE']->register['semanticid'] = $semCategory[0]; foreach ($rows as $row) { if($row["tx_semantic_category"]){ $hasSemanticContent = true; if($row["tx_semantic_category"] == -1) $neutralElements[] = $row; else if($row["tx_semantic_category"] == $semCategory[0]) $semElement = $row; else{ $semElements[] = $row['uid']; } } } if($semElement){ if($neutralElements){ foreach($neutralElements as $neutralElement){ $semElements[] = $neutralElement['uid']; } } } if($hasSemanticContent){ $GLOBALS['TSFE']->register['semantic'] = count($semElements) ? ' uid NOT IN ('.implode(",", $semElements).')' : 'true'; } } //$statistik = self::getStatistik($userData); try{ mcrypt_generic_deinit($this->td); mcrypt_module_close($this->td); }catch(\Exception $e){} //return $statistik; } function getUserData(){ if($_COOKIE["dpsmtc"]){ if(strpos($_COOKIE["dpsmtc"], "%") !== false){ $_COOKIE["dpsmtc"] = urldecode($_COOKIE["dpsmtc"]); } if(strpos($_COOKIE["dpsmtc"], ":") !== false){ $userData = unserialize($_COOKIE["dpsmtc"]); }else{ $userData = unserialize($this->decrypt($_COOKIE["dpsmtc"])); } } else $userData = array(); return $userData; } function saveUserData($data){ $dataCrypt = $this->encrypt(serialize($data)); @setcookie("dpsmtc", $dataCrypt, intval(time()+631138519), '/'); } function getCurrentPageCat(){ for($i = count($GLOBALS["TSFE"]->rootLine)-1; $i >= 0; $i--){ $currentRow = $GLOBALS["TSFE"]->rootLine[$i]; $semanticCat = $currentRow["tx_semantic_category"]; if($semanticCat){ return $semanticCat; } } } function getCategoryData($id, $field="", $all=false, $orderby=""){ if($all == false){ $where = 'uid = "'.$id.'"'; }else{ $where = ""; } $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','tx_dpsemanticsystem_domain_model_semanticcategory', $where, '', $orderby); if($all){ $returnArray = array(); if(mysqli_num_rows($res)){ while($row = mysqli_fetch_assoc($res)){ $returnArray[] = $row; } } return $returnArray; } $row = mysqli_fetch_assoc($res); if($field) return $row[$field]; return $row; } function saveTempDataToBrain($data){ if($data["temp"]["data"]){ $newData = self::calculateBrain($data["brain"], $data["temp"]); $data["brain"]["data"] = $newData; unset($data["temp"]["data"]); } return $data; } function calculateBrain($brainData, $tempData){ $newData = array(); $categoryData = self::getCategoryData(0, "", true); if(!$tempData["data"]) { return $brainData["data"]; } $tempData["data"] = self::calculatePercent($tempData["data"], false); if(!$brainData["data"]){ return self::fillArrayWithCategory($tempData["data"]); } $multiplikator = ($tempData["date"]-$brainData["date"])/8640000; if($multiplikator < 0.1) $multiplikator = 0.1; if($multiplikator > 3.65) $multiplikator = 3.65; $divisor = 1+$multiplikator; foreach ($categoryData as $value){ $key = intval($value["uid"]); if($tempData["data"][$key]){ $newData[$key] = $brainData["data"][$key] + ($tempData["data"][$key]*$multiplikator); }else if($brainData["data"][$key]){ $newData[$key] = $brainData["data"][$key]; }else{ $newData[$key] = 0; } } foreach ($newData as $key => $value){ $newData[$key] = $newData[$key] / $divisor; } return $newData; } function calculatePercent($data, $round=true){ $allClicks = array_sum($data); foreach ($data as $key => $value){ $percent = ($value/$allClicks * 100); if($round) $returnArray[$key] = round($percent , 2); else $returnArray[$key] = $percent; } return $returnArray; } function fillArrayWithCategory($data){ $categoryData = self::getCategoryData(0, "", true, "rand()"); foreach ($categoryData as $value){ $key = intval($value["uid"]); if(!$data[$key]) $data[$key] = 0; } return $data; } /* AUSGABE */ function getCategories4Output($shuffle=true){ $userData = self::getUserData(); $brainData = $userData["brain"]; $tempData = $userData["temp"]; $data = self::calculateBrain($brainData, $tempData); if(count($data)){ arsort($data); $returnArray = $data; }else if($shuffle){ $categoryData = self::getCategoryData(0, "", true); shuffle($categoryData); foreach ($categoryData as $value){ $returnArray[$value["uid"]] = 0; } } return $returnArray; } function getStatistik(){ $extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['dp_semanticsystem']); if(!$extConf["debug"]) return; if(!$GLOBALS['TSFE']->beUserLogin) return; if($GLOBALS["BE_USER"]->user["username"] != "dp") return; $data = self::getUserData(); $output = " "; $hilightColor = "A7C414"; $output .= '
'; $output .= 'Semantic Debugausgabe anzeigen/verstecken'; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $categoryArray = self::getCategories4Output(); if($categoryArray && ($data["brain"]["data"] || $data["temp"]["data"])){ $output .= ''; $output .= ''; $output .= ''; $count = 0; foreach ($categoryArray as $key => $value){ if($count < 7) $dataXMLEntries .= ""; $count++; } $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; if($data["brain"]["date"]) $output .= ''; else $output .= ''; $output .= ''; if($data["brain"]["data"]){ arsort($data["brain"]["data"]); foreach ($data["brain"]["data"] as $key => $value){ $output .= ''; $output .= ''; $output .= ''; $output .= ''; } }else{ $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; if($data["temp"]["date"]) $output .= ''; else $output .= ''; $output .= ''; if($data["temp"]["data"]){ arsort($data["temp"]["data"]); foreach ($data["temp"]["data"] as $key => $value){ $output .= ''; $output .= ''; $output .= ''; $output .= ''; } }else{ $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; $output .= '
'; /* FLASH CHART */ $dataXML = "$dataXMLEntries"; $xmlFile = fopen("typo3conf/ext/dp_semanticsystem/res/flashchart.xml", "w"); fwrite($xmlFile, $dataXML); fclose($xmlFile); $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId] .= ''; $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId] .= ''; return $output; } /** * Generates a hex string of $src * @param $src string String to be encrypted * @return void */ function encrypt($src) { $this->initCrypt(); srand(( double) microtime() * 1000000); $this->iv = mcrypt_create_iv($this->ks, MCRYPT_RAND); mcrypt_generic_init($this->td, $this->salt, $this->iv); $tmpStr = mcrypt_generic($this->td, $src); return bin2hex($this->iv.$tmpStr); } /** * Decrypts a hex string * @param $src string String to be decrypted * @return void */ function decrypt($src) { $this->initCrypt(); $corrected = preg_replace("[^0-9a-fA-F]", "", $src); $binenc = pack("H".strlen($corrected), $corrected); $this->iv = substr($binenc, 0, $this->ks); $binstr = substr($binenc, $this->ks); mcrypt_generic_init($this->td, $this->salt, $this->iv); $decrypted = mdecrypt_generic($this->td, $binstr); return trim($decrypted); } function initCrypt(){ if($this->td) return; $this->td = mcrypt_module_open('rijndael-256', '', 'ofb', ''); $this->ks = mcrypt_enc_get_key_size($this->td); $this->salt = substr(md5("!Doppelpack:66:Semantic!"), 0, $this->ks); } } ?> BMW Motorenwerk Steyr – Besichtigung – Steyr, OÖ
  • Italiano
  • English
  • Deutsch

BMW Group Werk Steyr

Faszination Produktion bei der BMW Group erleben.



Das BMW Group Werk Steyr ist das weltweit größte Motorenwerk der BMW Group und konzernweites Dieselmotoren-Entwicklungszentrum. Hier werden die Dieselmotoren der BMW Group entwickelt und neben Kernkomponenten auch 3-, 4- und 6-Zylinder Diesel- sowie Benzinmotoren gebaut. Diese werden nach Kundenwunsch in präziser Qualitätsarbeit montiert und weltweit in die Fahrzeugwerke der BMW Group geliefert. Das Werk Steyr zählt mit seiner beinahe 40-jährigen Erfolgsgeschichte zu den größten und wichtigsten Industriebetrieben Österreichs.
Sie interessieren sich für Motoren und die damit verbundene Freude am Fahren? Dann kommen Sie uns im BMW Group Werk Steyr besuchen! Während der Werkführung erhalten Sie faszinierende Einblicke in die Welt der Dieselmotoren-Entwicklung, in die Fertigung von Motorenkomponenten sowie in die Motorenmontage. Außerdem erfahren Sie alles rund um das Thema Emissionen und die Funktionsweise eines Motors.
 
Werksführungen sind für Gruppen (Exklusivführung) und Einzelpersonen (Einzelbesucherführung) gegen Voranmeldung in Deutsch und Englisch möglich: Mo - Fr 8 - 18 Uhr
 
Für Einzelpersonen werden Fixtermine angeboten.
Achtung: Die Fixtermine können produktionsbedingt verschoben werden und die Verfügbarkeit ist immer vorab mit der Buchungswebsite bzw. Buchungshotline abzustimmen!

Fixtermine 2020:
Termine für Einzelbesucherführungen 2020, Sprache Deutsch

Wöchentlich an einem Freitag um 16 Uhr:
10.01., 17.01, 24.01., 31.01., 07.02., 14.02., 21.02., 28.02., 06.03., 13.03., 20.03., 27.03., 03.04., 17.04., 24.04., 08.05., 15.05., 29.05., 05.06., 19.06., 26.06., 03.07., 10.07., 17.07., 24.07., 31.07., 28.08., 04.09., 11.09., 18.09., 25.09., 02.10., 09.10., 16.10., 23.10., 30.10., 06.11., 13.11., 20.11., 27.11., 04.12., 11.12.

Wöchentlich an einem Donnerstag um 16.30 Uhr:
13.02., 27.02., 12.03., 26.03.

Zwei-Wöchentlich an einem Freitag um 11.30 Uhr:
07.02., 21.02., 06.03., 20.03.

Einmal pro Monat an einem Dienstag um 8.45 Uhr:
14.01., 11.02., 10.03., 07.04., 12.05., 09.06., 14.07., 08.09., 13.10., 10.11., 01.12.

Einmal pro Monat an einem Mittwoch um 17.30  Uhr:
22.01., 19.02., 18.03., 22.04., 27.05., 24.06., 22.07., 26.08., 23.09., 21.10., 18.11.
 
Termine für Einzelbesucherführungen 2020, Sprache Englisch
Einmal pro Monat an einem Freitag um 16.15 Uhr:
24.01., 28.02., 27.03., 24.04., 29.05., 26.06., 24.07., 28.08., 25.09., 23.10., 27.11.




Kontakt:
Hinterbergerstrasse 2, 4400 Steyr
Tel. +43 7252 888 15750
www.bmw-besuchen.com



Preise

Exklusivführung € 150,- pro Gruppe (max. 25 Personen)
Einzelbesucherführung € 8,- pro Person

Online Buchen
Anfragen