openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 5c931fc0cfa2a107f99a222e2baac7591b35f190
parent afa4166aa12a1363e80843b45f6008d253cf5f03
Author: Jan Dankert <devnull@localhost>
Date:   Wed,  6 Dec 2017 23:52:07 +0100

Die Klasse Configuration ist jetzt ein Modul und liest nur die Custom-Configuration aus der config.yml. Alle OpenRat-intern Default-Konfigurationen werden beim Aufrufer ergänzt. So ist diese Klasse allgemeiner einsetzbar.

Diffstat:
dispatcher.php | 14++++++++++----
init.php | 31++++++++++++++++---------------
modules/configuration/require.php | 6++++++
3 files changed, 32 insertions(+), 19 deletions(-)

diff --git a/dispatcher.php b/dispatcher.php @@ -50,10 +50,16 @@ try // Da die Konfiguration neu eingelesen wird, sollten wir auch die Sitzung komplett leeren. if ( is_array($conf) && $conf['config']['session_destroy_on_config_reload'] ) session_unset(); - - $conf = Configuration::load(); - - $conf['build'] = parse_ini_file('build.ini' ); + + // Fest eingebaute Standard-Konfiguration laden. + $conf = array(); + require('./util/config-default.php'); // writes to $conf + + $customConfig = Configuration::load(); + $conf = array_replace_recursive($conf, $customConfig); + + + $conf['build'] = parse_ini_file('build.ini' ); $conf['version'] = parse_ini_file('version.ini'); // Sprache lesen diff --git a/init.php b/init.php @@ -19,7 +19,7 @@ define('PHP_EXT' ,'php' ); require_once( "functions/common.inc.".PHP_EXT ); - + define('IMG_EXT' ,'.gif' ); define('IMG_ICON_EXT' ,'.png' ); define('MAX_FOLDER_DEPTH',5 ); @@ -48,11 +48,11 @@ define('OR_TMP_DIR' ,'./tmp/' ); define('OR_CONTROLLER_FILE' ,'dispatcher'); define('OR_MODULES_DIR' ,'./modules/'); define('START_TIME' ,time() ); -define('REQUEST_ID' ,'req'.time().rand() ); +define('REQUEST_ID' ,'req'.time().rand() ); define('SECURITY_GUEST',1); // Jeder (auch nicht angemeldete) dürfen diese Aktion ausführen -define('SECURITY_USER' ,2); // Angemeldete Benutzer dürfen diese Aktion ausführen -define('SECURITY_ADMIN',3); // Nur Administratoren dürfen diese Aktion ausführen +define('SECURITY_USER' ,2); // Angemeldete Benutzer dürfen diese Aktion ausführen +define('SECURITY_ADMIN',3); // Nur Administratoren dürfen diese Aktion ausführen define('REQ_PARAM_TOKEN' ,'token' ); define('REQ_PARAM_ACTION' ,'action' ); @@ -69,22 +69,22 @@ define('REQ_PARAM_DATABASE_ID' ,'dbid' ); define('REQ_PARAM_TARGET' ,'target' ); define('OR_SERVICECLASSES_DIR','./util/' ); -define('OR_AUTHCLASSES_DIR' ,'./auth/' ); +define('OR_AUTHCLASSES_DIR' ,'./auth/' ); /** * Wandelt jeden Fehler in eine ErrorException um. - */ -function exception_error_handler($severity, $message, $file, $line) { + */ +function exception_error_handler($severity, $message, $file, $line) { if ( !(error_reporting() & $severity) ) - { - // Dieser Fehlercode ist nicht in error_reporting enthalten - return; - } - throw new ErrorException($message, 0, $severity, $file, $line); + { + // Dieser Fehlercode ist nicht in error_reporting enthalten + return; + } + throw new ErrorException($message, 0, $severity, $file, $line); } - -set_error_handler("exception_error_handler"); + +set_error_handler("exception_error_handler"); @@ -117,12 +117,13 @@ require_once( "functions/request.inc.php" ); // Werkzeugklassen einbinden. require_once( OR_SERVICECLASSES_DIR."include.inc.".PHP_EXT ); -require_once( OR_AUTHCLASSES_DIR."include.inc.".PHP_EXT ); +require_once( OR_AUTHCLASSES_DIR."include.inc.".PHP_EXT ); require_once( OR_MODULES_DIR."security/require.".PHP_EXT ); require_once( OR_MODULES_DIR."template-engine/require.".PHP_EXT ); require_once( OR_MODULES_DIR."util/require.".PHP_EXT ); +require_once( OR_MODULES_DIR."configuration/require.".PHP_EXT ); ?> \ No newline at end of file diff --git a/modules/configuration/require.php b/modules/configuration/require.php @@ -0,0 +1,5 @@ +<?php + +include( __DIR__ ."/Configuration.class.php" ); + +?>+ \ No newline at end of file