/** * @param array $relations * @return array */ private function buildConfig(array $data, $asField) { $config = new Config(); foreach ($data as $item) { $config->add(explode('.', $item), $asField); } return $config; }
function RebuildPoll($only = null, PDO $db = null) { if (!$db) { global $db; } require_once './lib/config.php'; $lang = array(); $used = array(); if (!$only) { foreach (scandir('lang') as $x) { if (ctype_alnum($x)) { $lang[] = $x; } } } elseif (ctype_alnum($only)) { $lang[] = $x; } else { return false; } $poll = $db->query('SELECT * FROM ' . PRE . 'polls WHERE access IN (\'' . join('\',\'', $lang) . '\') ORDER BY ID DESC')->fetchAll(2); //ASSOC foreach ($poll as $x) { if (isset($used[$x['access']])) { continue; } if (in_array($x['access'], $lang)) { $o = $db->query('SELECT ID,a,num,color FROM ' . PRE . 'answers WHERE IDP=' . $x['ID'] . ' ORDER BY seq')->fetchAll(3); $file = new Config('./cache/poll_' . $x['access'] . '.php'); $file->add('poll', $x); $file->add('option', $o); $file->save(); $used[$x['access']] = 1; } } //Zbędne pliki cache foreach ($lang as $x) { if (!isset($used[$x]) && file_exists('./cache/poll_' . $x . '.php')) { unlink('./cache/poll_' . $x . '.php'); } } }
public function bootstrap() { session_start(); ob_start(); error_reporting(E_ALL); ini_set('display_errors', '1'); require '../vendor/autoload.php'; define('vibius_BASEPATH', dirname(__DIR__) . '/'); $this->aliasManager = new Vibius\Facade\AliasManager(); $this->aliasManager->registerAutoloader(); // add config from app/config.php Config::add('config'); $this->aliasManager->registerAliasDeleter(); }
private function __construct() { require_once __DIR__ . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'index.php'; if (!is_array(Config\Variables::$data)) { trigger_error('Invalid configuration: missing Config\\Variables::$data variable', E_USER_ERROR); } $CONSTANTS = ['MINIFICATION_ENABLED' => false, 'REDIS_HOST' => '', 'REDIS_PORT' => '', 'PUSHED_ENABLED' => false, 'PUSHED_IP6' => true, 'PUSHED_PORT' => 5667, 'MIN_LENGTH_USER' => 2, 'MIN_LENGTH_PASS' => 6, 'MIN_LENGTH_NAME' => 2, 'MIN_LENGTH_SURNAME' => 2, 'CAPTCHA_LEVEL' => 5, 'CAMO_KEY' => '', 'CAMO_HOST' => '', 'HTTPS_DOMAIN' => '', 'STATIC_DOMAIN' => '', 'LOGIN_SSL_ONLY' => false, 'MINIFICATION_JS_CMD' => 'uglifyjs %path% -c unused=false', 'POSTGRESQL_HOST' => -1, 'POSTGRESQL_DATA_NAME' => -1, 'POSTGRESQL_USER' => -1, 'POSTGRESQL_PASS' => -1, 'POSTGRESQL_PORT' => -1, 'SITE_HOST' => -1, 'SITE_NAME' => -1, 'MOBILE_HOST' => -1, 'ISSUE_GIT_KEY' => '', 'SMTP_SERVER' => -1, 'SMTP_PORT' => -1, 'SMTP_USER' => -1, 'SMTP_PASS' => -1]; foreach (Config\Variables::$data as $const_key => $const_val) { if (!isset($CONSTANTS[$const_key])) { trigger_error('Unknown constant: ' . $const_key, E_USER_ERROR); } Config::add($const_key, $const_val); unset($CONSTANTS[$const_key]); } // second (and last) iteration foreach ($CONSTANTS as $rkey => $rval) { if ($rval === -1) { trigger_error('Missing constant from your config: ' . $rkey, E_USER_ERROR); } Config::add($rkey, $rval); } }
$page2 = 'nav-testimonios'; require "template/header.php"; ?> <div class="container"> <div class="row"> <?php require "template/nav_testimonios.php"; ?> <?php if (Utils::checkPost("add")) { if (Config::exist("bgtestimonios")) { $edit = array("value" => File::upload("background")); $confirm = Config::edit($edit, array("name", "=", "bgtestimonios")); } else { $new = array("name" => "bgtestimonios", "value" => File::upload("background")); $confirm = Config::add($new); } } ?> <div class="grid col-9"> <div class="row"> <form action="" method="post" enctype="multipart/form-data" > <p><?php if (isset($confirm) && $confirm > 0) { echo "Modificación exitosa"; } ?> </p> <h3>Ingrese la imagen de fondo</h3>
$q = $correct ? join(',', $correct) : 0; } #Aktualizuj try { $db->beginTransaction(); $db->exec('UPDATE ' . PRE . 'polls SET num=num+1 WHERE ID=' . $id); $db->exec('UPDATE ' . PRE . 'answers SET num=num+1 WHERE IDP=' . $id . ' AND ID IN (' . $q . ')'); $db->exec('INSERT INTO ' . PRE . 'pollvotes (user,ID) VALUES (' . $u . ',' . $id . ')'); $db->commit(); #Pobierz odpowiedzi $o = $db->query('SELECT ID,a,num,color FROM ' . PRE . 'answers WHERE IDP=' . $id . ' ORDER BY seq')->fetchAll(3); ++$poll['num']; #Zapisz nowe dane do pliku require './lib/config.php'; $file = new Config('./cache/poll_' . LANG . '.php'); $file->add('poll', $poll); $file->add('option', $o); $file->save(); } catch (Exception $e) { $view->message(22); exit; } } } #Cookie $voted[] = $id; setcookie('voted', join('o', $voted), time() + 7776000); #JS? if (JS) { $_GET['id'] = $id; include 'mod/panels/poll.php';
} require LANG_DIR . 'admCfg.php'; #Action: save if ($_POST) { $num = count($_POST['bad']); $words1 = array(); $words2 = array(); for ($i = 0; $i < $num; ++$i) { $words1[] = substr($_POST['bad'][$i], 0, 50); $words2[] = substr($_POST['good'][$i], 0, 50); } #Load saver class require './lib/config.php'; try { $f = new Config('words'); $f->add('words1', $words1); $f->add('words2', $words2); $f->save(); $view->info($lang['saved']); } catch (Exception $e) { $view->info($lang['error'] . $e); } } else { include './cfg/words.php'; $num = count($words1); } #FORM $word = array(); for ($i = 0; $i < $num; ++$i) { $word[] = array(clean($words1[$i]), clean($words2[$i])); }
// { // self::params[$name] = $value; // } // // public function get($name) // { // return isset($this->params[$name]) ? $this->params[$name] : null; // } // // public function getAll() // { // return $this->params[$name]; // } // // public function set($name, $value) // { // if(isset($this->params[$name])) // { // $this->params[$name] = $value; // } // } //} //Context Component 1 $config = new Config(); $config->add('db_host', 'localhost'); var_dump($config->get('db_host')); //Context Component 2 $config2 = new Config(); $config2->add('casche_host', 'localddhost'); var_dump($config2->get('casche_host')); var_dump($config, $config2);
<?php //defaule setting $log = array('Logging' => array('save_path' => 'F:\\tmp', 'default_wirte_level' => Logging::LEVEL_INFO, 'level' => Logging::LEVEL_INFO, 'filename_prefix' => 'mytest', 'sys_id' => 'test_1', 'write_local' => TRUE, 'write_zmq' => FALSE)); Config::add($log); Config::Add(array('DefaultMemcacheServers' => 'xxxx:xxxx,xxxx:xxx', 'zmqAPI' => array('Server' => array())));
/** * Comando específico para uso com PDO. Se PDO não está presente, * chama $this->query. * * @param string $sql * @return <type> Retorna resultado da operação */ public function exec($sql, $mode = '') { /** * Timer init */ $sT = microtime(true); /** * Se a extensão PDO está ativada */ if ($this->PdoExtension()) { /** * Executa e retorna resultado */ $result = $this->conn->exec($sql); /** * Quando executado CREATE TABLE, retorno com sucesso é 0 e * insucesso é false, não sendo possível diferenciar entre um e * outro. Este hack dá um jeitinho nisto. */ if (in_array($mode, array('CREATE_TABLE', 'CREATE TABLE'))) { if ($result == 0 and !is_bool($result)) { $result = 1; } else { $result = false; } } //return $result; } else { $return = mysql_query($sql); } /** * Timer Init */ $eT = microtime(true); Config::add("SQLs", array("sql" => $sql, "time" => $eT - $sT)); return $result; }
if (empty($opt['pubKey'])) { unset($opt['pubKey']); } if (empty($opt['prvKey'])) { unset($opt['prvKey']); } } if ($opt['captcha'] != 1) { if (empty($opt['sbKey'])) { unset($opt['sbKey']); } } require './lib/config.php'; try { $f = new Config('main'); $f->add('cfg', $opt); $f->save(); $cfg =& $opt; $view->info($lang['saved']); event('CONFIG'); include './admin/config.php'; return 1; } catch (Exception $e) { $view->info($e); } } else { $opt =& $cfg; } include LANG_DIR . 'admCfg.php'; #Style $skin = '';
<?php $db_zones = array('localhost_one' => array('main' => array('host' => '127.0.0.1', 'user' => 'root', 'password' => 'ruoyi', 'database' => 'ruoyi_testone', 'charset' => 'utf8', 'port' => '3306'), 'query' => array(array('host' => '127.0.0.1', 'user' => 'root', 'password' => 'ruoyi', 'database' => 'ruoyi_testone', 'charset' => 'utf8', 'port' => '3306'), array('host' => '127.0.0.1', 'user' => 'root', 'password' => 'ruoyi', 'database' => 'ruoyi_testone', 'charset' => 'utf8', 'port' => '3306'))), 'key2' => array('main' => array('host' => 'x', 'user' => 'x', 'password' => 'x', 'database' => 'x', 'charset' => 'utf8', 'port' => '5432'), 'query' => array(array('host' => 'x', 'user' => 'x', 'password' => 'x', 'database' => 'x', 'charset' => 'utf8', 'port' => '5432'))), 'key3' => array('main' => array('host' => 'x', 'user' => 'x', 'password' => 'x', 'database' => 'x', 'charset' => 'utf8', 'port' => '3306'), 'query' => array(array('host' => 'x', 'user' => 'x', 'password' => 'x', 'database' => 'x', 'charset' => 'utf8', 'port' => '3306')))); Config::add(array('DB_CONFIG' => $db_zones)); unset($db_zones);
/** * FIND() * * Busca na base de dados por dados requisitados pelos Models. * * @author Alexandre de Oliveira <*****@*****.**> * @since v0.1 * @param array $options Parâmetros de configuração da busca * Opções de configuração * -- * - 'mainModel' : O model que está fazendo a requisição * - 'tableAlias': Quais tabelas são de quais models * - 'models' : Models que fazem parte da requisição (relacionados) * Parâmetros de busca * -- * - 'conditions': Condições para formação de operações lógicas SQL * - 'fields' : Campos a serem carregados do DB * - 'limit' : Quantos registros devem ser carregados * - 'order' : Ordenação dos registros (ORDER BY) * * * @return array Resultado da base de dados no formato requisitado */ public function find($options, $mode = "all") { $findStartTime = microtime(true); /** * Configuração inicial */ /** * Models */ $mainModel = $options["mainModel"]; $mainModel->loadAssociations(); /** * VERIFICA $OPTIONS * * Faz verificações para saber que tipo de busca deve ser feita */ /** * LIMIT * * Verificação: Se SQL Limit definido */ if (!empty($options["limit"])) { /** * hasMany * * Desativa relacionamentos hasMany para buscá-los separadamente */ $hasManyTemp = $mainModel->hasMany; //$options["mainModel"]->hasMany = array(); /** * @todo - é necessário hiddenHasMany? */ $options["hiddenHasMany"] = $hasManyTemp; //$options["hasMany"] = $hasManyTemp; /** * Toma os códigos SQL gerados por sqlObject para o Model principal */ $sql = $this->sqlObject->select($options); //pr($sql); /** * Carrega os dados da tabela principal */ $query = array(); if (is_array($sql)) { foreach ($sql as $sqlAtual) { $result = $this->conn->query($sqlAtual); $query = array_merge($query, $result); } } //pr($query); /** * Desmancha $sql do model principal para não haver recarregamento */ $sql = array(); /** * Pega os ids dos resultados atuais */ foreach ($query as $campos) { $mainIds[] = $campos[get_class($mainModel) . ".id"]; } $mainModel->hasMany = $hasManyTemp; /** * HASMANY * * Se há dados no banco de dados, faz busca hasMany separado. * * Como um registro X pode ter vários registros Y, não é possível * realizar uma busca conjunta de X e Y no mesmo SQL, pois usando * LIMIT limitaremos X (ex. últimos 10 X), mas também limitaremos * Y que pode ter 100 registros. * * Assim, fazemos o query do subModel ( neste caso seria Y) * separadamente. */ if (!empty($mainIds)) { /** * CARREGA DADOS hasMANY */ /** * Recupera dados de relacionamento */ $mainIds = array_unique($mainIds); foreach ($mainModel->hasMany as $model => $properties) { $subOptions["mainModel"] = $mainModel->{$model}; $subOptions["conditions"] = array('OR' => array($model . "." . $properties["foreignKey"] => $mainIds)); $subOptions['conditions'] = array_merge_recursive($subOptions['conditions'], $options['conditions']); if (!empty($properties['fields'])) { $subOptions['fields'] = $properties['fields']; } //$subOptions["order"] = ( empty($options["order"]) ) ? "" : $options["order"]; $subOptions["order"] = ""; $sql = array_merge($sql, $this->sqlObject->select($subOptions)); } } //pr($query); } else { $sql = $this->sqlObject->select($options); } $loopStartTime = microtime(true); /** * RETURN * * Retorna dados para Models */ /** * Prepara $query se necessário */ if (empty($query)) { $query = array(); } /** * Roda SQLs criado, verificando se são arrays */ $loopCount = 0; if (is_array($sql)) { foreach ($sql as $sqlAtual) { $result = $this->conn->query($sqlAtual, "ASSOC"); $query = array_merge($query, $result); } } //return $query; /** * FORMATA QUERY * * Trata os dados que vieram em formato cru do DB para um formato * mais tragável (adequado). * * ATENÇÃO: o código a seguir é onde leva mais tempo de processamento */ $return = array(); $registro = array(); $i = 0; $o = 0; foreach ($query as $chave => $dados) { /** * ANALISA RESULTADO DO DB */ /* * Transforma o resultado em uma array legível. O resultado do * DB vem desformatado do SQL Object. */ foreach ($dados as $campo => $valor) { $underlinePos = strpos($campo, "."); if ($underlinePos !== false) { /** * Model e Campo */ $modelReturned = substr($campo, 0, $underlinePos); $campoReturned = substr($campo, $underlinePos + 1, 100); /** * Codigo */ $tempResult[$i][$modelReturned][$campoReturned] = $valor; } $o++; } $i++; } $loopEndTime = microtime(true); /** * FORMATA VARIÁVEL LEGÍVEL E TRATÁVEL * * Monta estruturas de saída de acordo com o modo pedido * * O modo padrão é ALL conforme configurado nos parâmetros da função */ /** * Verificação de existência de dados no DB */ if (empty($tempResult)) { $tempResult = array(); } /** * Loop por cada item do banco de dados retornado */ $loopProcessments = 0; foreach ($tempResult as $chave => $index) { $hasManyResult = array(); foreach ($index as $model => $dados) { /** * Ajusta retorno da array de dados para um formato legível * e de melhor visualização para posterior tratamento. */ /** * hasMANY * * Se o model pertence à categoria hasMany do Model pai */ if (array_key_exists($model, $mainModel->hasMany)) { $hasManyResult = $dados; /** * Se há valor na tabela filha */ if (!empty($hasManyResult[$mainModel->hasMany[$model]["foreignKey"]])) { $registro[$hasManyResult[$mainModel->hasMany[$model]["foreignKey"]]][$model][] = $hasManyResult; } } else { if (array_key_exists($model, $mainModel->hasOne)) { if (!empty($dados[$mainModel->hasOne[$model]["foreignKey"]])) { $registro[$index[get_class($mainModel)]["id"]][$model] = $dados; } } else { $registro[$index[get_class($mainModel)]["id"]][$model] = $dados; } } $loopProcessments++; } unset($hasManyResult); //unset($mainId); } //echo "Quantidade de Loops: ". $loopProcessments."<br>"; $findEndTime = microtime(true); $loopEndTime = empty($loopEndTime) ? microtime(true) : $loopEndTime; //echo "Loop Time: ".($loopEndTime - $loopStartTime)."<br />"; Config::write("dataFormatted", $loopProcessments); Config::write("modelLoops", $loopEndTime - $loopStartTime); Config::add("findStartTime", array($findEndTime - $findStartTime)); //pr( array_ $registro); /** * MODOS */ /* * First */ if ($mode == "first") { $registro = reset($registro); } else { if ($mode == "list") { if (!empty($registro)) { foreach ($registro as $chave => $model) { /* * Usa-se reset pois há ainda outra array dentro de $valor, que * é um model. */ $actualModel = reset($model); $campoId = $actualModel["id"]; unset($actualModel["id"]); $campoValor = reset($actualModel); $tmp[$campoId] = $campoValor; //reset( next($valor) ); } $registro = $tmp; } } } return $registro; }
function buildConfig(&$data) { $f = new Config('./cfg/db.php'); $f->add('db_db', $data['type']); $f->add('db_d', $data['file'] ? $data['file'] : $data['db']); $f->addConst('PRE', PRE); $f->addConst('PATH', PATH); $f->addConst('URL', URL); $f->addConst('NICEURL', $this->urls); #Only for MySQL if ($data['type'] == 'mysql') { $f->add('db_h', $data['host']); $f->add('db_u', $data['user']); $f->add('db_p', $data['pass']); } return $f->save(); }
} else { $setup[$name] = (double) $data['version']; Install(); if (isset($_POST['m'])) { $q = $db->prepare('INSERT INTO ' . PRE . 'mitems (menu,text,url,seq) VALUES (?,?,?,?)'); for ($i = 0, $num = count($_POST['mt']); $i < $num; ++$i) { if (!empty($_POST['mt'][$i])) { $q->execute(array($_POST['mid'][$i], $_POST['mt'][$i], $name, $_POST['mp'][$i])); } } include './lib/mcache.php'; RenderMenu(); } } $o = new Config('plug'); $o->add('setup', $setup); $o->save(); $db->commit(); unset($_SESSION['admenu']); } catch (Exception $e) { $view->info($e->getMessage()); return 1; } } else { $opt = array(); $useOpt = isset($setup[$name]) ? 'o.del.' : 'o.add.'; $useOpt .= isset($data[$useOpt . LANG]) ? LANG : 'en'; if (isset($data[$useOpt])) { $i = 0; foreach (explode('+', $data[$useOpt]) as $o) { $opt['o' . ++$i] = clean($o);
} } unset($_SESSION['renew'], $glob, $x); include './admin/config.php'; return 1; } catch (Exception $e) { $view->info($lang['saved']); } } #Save if ($_POST) { $opt = array('url' => $_POST['url'], 'path' => $_POST['path'], 'nice' => (int) $_POST['nice']); require './lib/config.php'; $f = new Config('db'); try { $f->add('db_db', $db_db); $f->add('db_d', $db_d); #Only for MySQL if ($db_db == 'mysql') { $f->add('db_h', $db_h); $f->add('db_u', $db_u); $f->add('db_p', $db_p); } #Constants $f->addConst('PRE', PRE); $f->addConst('PATH', $opt['path']); $f->addConst('URL', $opt['url']); $f->addConst('NICEURL', (int) $opt['nice']); #Save file $f->save($opt); #Log config change
<?php if (iCMSa != 1 || !admit('R')) { exit; } require LANG_DIR . 'admAll.php'; #Aktualizuj lub usun if ($_POST && isset($_POST['del']) && ($x = GetID(true))) { $db->exec('DELETE FROM ' . PRE . 'rss WHERE ID IN (' . $x . ')'); } #Pobierz kanaly RSS $res = $db->query('SELECT ID,auto,name,lang FROM ' . PRE . 'rss ORDER BY lang,name'); $all = array(); foreach ($res as $x) { $all[] = array('id' => $x['ID'], 'title' => $x['name'], 'land' => $x['lang'], 'auto' => $x['auto'] ? $lang['yes'] : $lang['no'], 'edit' => url('editRss/' . $x['ID'], '', 'admin'), 'file' => file_exists('rss/' . $x['ID'] . '.xml') ? 'rss/' . $x['ID'] . '.xml' : null); } #Szablon $view->add('rss', array('channel' => &$all)); #Zapisz tytuly w opcjach if ($_POST || isset($URL[1])) { $cfg['RSS'] = array(); foreach ($all as $x) { if ($x['auto']) { $cfg['RSS'][$x['land']][$x['id']] = $x['title']; } } include_once './lib/config.php'; $o = new Config('main'); $o->add('cfg', $cfg); $o->save(); }
<?php $default_dev = 'pro'; if (defined('APP_EVN')) { $default_dev = APP_EVN; } $logging = array('logging' => array('default_write_level' => 'info', 'level' => 'info', 'save_path' => 'F:/tmp/aaa/', 'filename_prefix' => 'log_', 'sys_id' => '', 'write_local' => true), 'Email_setting' => array('CHAR_SET' => 'UTF-8', 'SMTPAuth' => true, 'SMTP' => 'smtp', 'HOST' => 'smtp.163.com', 'PASSWD' => '', 'USERNAME' => 'xxx', 'PORT' => 25)); Config::add($logging); unset($logging); require ROOT_CONFIG . '/' . $default_dev . '/default.php'; require ROOT_CONFIG . '/' . $default_dev . '/db.php';
$GLOBALS['TL_HOOKS']['getGlossarPages']['faq'] = array('sioweb\\contao\\extensions\\glossar\\GlossarFAQ', 'generateUrl'); $GLOBALS['TL_HOOKS']['cacheGlossarTerms']['faq'] = array('sioweb\\contao\\extensions\\glossar\\GlossarFAQ', 'updateCache'); $GLOBALS['TL_HOOKS']['glossarContent']['faq'] = array('sioweb\\contao\\extensions\\glossar\\GlossarFAQ', 'glossarContent'); $GLOBALS['TL_HOOKS']['clearGlossar']['events'] = array('sioweb\\contao\\extensions\\glossar\\GlossarEvents', 'clearGlossar'); $GLOBALS['TL_HOOKS']['getGlossarPages']['events'] = array('sioweb\\contao\\extensions\\glossar\\GlossarEvents', 'generateUrl'); $GLOBALS['TL_HOOKS']['cacheGlossarTerms']['events'] = array('sioweb\\contao\\extensions\\glossar\\GlossarEvents', 'updateCache'); $GLOBALS['TL_HOOKS']['glossarContent']['events'] = array('sioweb\\contao\\extensions\\glossar\\GlossarEvents', 'glossarContent'); $GLOBALS['glossar'] = array('css' => array('maxWidth' => 450, 'maxHeight' => 300), 'illegal' => '\\-_\\.&><;', 'templates' => array('ce_glossar', 'glossar_default', 'glossar_error', 'glossar_layer'), 'tables' => array('tl_settings', 'tl_sw_glossar', 'tl_content', 'tl_page', 'tl_glossar', 'tl_news_archive', 'tl_faq_category', 'tl_calendar')); if (\Config::get('enableGlossar') == 1) { $uploadTypes = \Config::get('uploadTypes'); if (strpos($uploadTypes, 'json') === false) { $uploadTypes .= (strlen($uploadTypes) > 0 ? ',' : '') . 'json'; if (method_exists('Contao\\Config', 'set')) { \Config::set('uploadTypes', $uploadTypes); } elseif (method_exists('Contao\\Config', 'add')) { \Config::add('$GLOBALS[\'TL_CONFIG\'][\'uploadTypes\']', $uploadTypes); } } if (Input::get('rebuild_glossar') == 1 || \Config::get('disableGlossarCache') == 1) { $GLOBALS['TL_HOOKS']['modifyFrontendPage'][] = array('sioweb\\contao\\extensions\\glossar\\RebuildGlossar', 'prepareRebuild'); $GLOBALS['TL_HOOKS']['indexPage'][] = array('sioweb\\contao\\extensions\\glossar\\RebuildGlossar', 'rebuild'); $GLOBALS['TL_HOOKS']['clearGlossar'][] = array('sioweb\\contao\\extensions\\glossar\\RebuildGlossar', 'clearGlossar'); } if (TL_MODE == 'FE') { $GLOBALS['TL_JAVASCRIPT'][] = 'system/modules/Glossar/assets/glossar.js'; $GLOBALS['TL_CSS'][] = 'system/modules/Glossar/assets/glossar.css'; $GLOBALS['TL_JQUERY'][] = '<script>var Contao = {request_token: "' . $_SESSION['REQUEST_TOKEN'] . '"};</script>'; } if (Input::post('glossar') == 1) { $GLOBALS['TL_HOOKS']['initializeSystem'][] = array('sioweb\\contao\\extensions\\glossar\\Glossar', 'getGlossarTerm'); }