/**
  * @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;
 }
Example #2
0
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');
        }
    }
}
Example #3
0
 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();
 }
Example #4
0
 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>
Example #6
0
             $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';
Example #7
0
}
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);
Example #9
0
<?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())));
Example #10
0
 /**
  * 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;
 }
Example #11
0
        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 = '';
Example #12
0
<?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);
Example #13
0
 /**
  * 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;
 }
Example #14
0
 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();
 }
Example #15
0
         } 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);
Example #16
0
            }
        }
        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
Example #17
0
<?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();
}
Example #18
0
<?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';
Example #19
0
$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');
    }