Cache of database "queries" can now be disabled (default). Please note, that if
[core.git] / inc / config.php
index 143ad06ca61c3ff5924f5cef4edab64540d59c44..868f53fd39aed93777a45997479cec348dd33d2f 100644 (file)
@@ -4,11 +4,11 @@
  * create a config-local.php in this directory at and set your changed
  * configuration entries there.
  *
- * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @author             Roland Haeder <webmaster@shipsimu.org>
  * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2013 Core Developer Team
  * @license            GNU GPL 3.0 or any newer version
- * @link               http://www.ship-simu.org
+ * @link               http://www.shipsimu.org
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-// Load the class from inc/config direktory
-@require_once(dirname(__FILE__) . '/classes/interfaces/class_FrameworkInterface.php');
-@require_once(dirname(__FILE__) . '/classes/interfaces/registry/class_Registerable.php');
-@require_once(dirname(__FILE__) . '/config/class_FrameworkConfiguration.php');
+// Load very basic classes, required to bootstrap
+require(ApplicationEntryPoint::detectCorePath() . '/inc/classes/interfaces/class_FrameworkInterface.php');
+require(ApplicationEntryPoint::detectCorePath() . '/inc/classes/interfaces/registry/class_Registerable.php');
+require(ApplicationEntryPoint::detectCorePath() . '/inc/config/class_FrameworkConfiguration.php');
 
 // Get a new configuration instance
-$cfg = FrameworkConfiguration::getInstance();
+$cfg = FrameworkConfiguration::getSelfInstance();
 
 // CFG: SERVER-PATH
-$cfg->setConfigEntry('base_path', (dirname(dirname(__FILE__)) . '/'));
+$cfg->setConfigEntry('base_path', ApplicationEntryPoint::detectCorePath() . '/');
 
 // CFG: BASE-URL
 $cfg->setConfigEntry('base_url', $cfg->detectBaseUrl());
 
 // CFG: DATABASE-TYPE
-$cfg->setConfigEntry('db_type', "local");
+$cfg->setConfigEntry('db_type', 'local');
 
 // CFG: LOCAL-DB-PATH
-$cfg->setConfigEntry('local_db_path', $cfg->readConfig('base_path') . "db/");
+$cfg->setConfigEntry('local_db_path', $cfg->getConfigEntry('base_path') . 'db/');
 
 // CFG: TIME-ZONE
-$cfg->setDefaultTimezone("Europe/Berlin");
+$cfg->setDefaultTimezone('Europe/Berlin');
 
 // CFG: MAGIC-QUOTES-RUNTIME
-$cfg->setMagicQuotesRuntime(false);
+$cfg->setMagicQuotesRuntime(FALSE);
 
 // CFG: CLASS-PREFIX
-$cfg->setConfigEntry('class_prefix', "class_");
+$cfg->setConfigEntry('class_prefix', 'class_');
 
 // CFG: CLASS-SUFFIX
-$cfg->setConfigEntry('class_suffix', ".php");
+$cfg->setConfigEntry('class_suffix', '.php');
 
 // CFG: RAW-TEMPLATE-EXTENSION
-$cfg->setConfigEntry('raw_template_extension', ".tpl");
+$cfg->setConfigEntry('raw_template_extension', '.tpl');
 
 // CFG: CODE-TEMPLATE-EXTENSION
-$cfg->setConfigEntry('code_template_extension', ".ctp");
+$cfg->setConfigEntry('code_template_extension', '.ctp');
 
 // CFG: SELECTOR-PATH
-$cfg->setConfigEntry('selector_path', "selector");
+$cfg->setConfigEntry('selector_path', 'selector');
 
-// CFG: APPLICATION-HELPER
-$cfg->setConfigEntry('app_helper_class', "ApplicationHelper");
+// CFG: APPLICATION-HELPER-CLASS
+$cfg->setConfigEntry('app_helper_class', 'ApplicationHelper');
 
 // CFG: LAUNCH-METHOD
-$cfg->setConfigEntry('entry_method', "entryPoint");
+$cfg->setConfigEntry('entry_method', 'entryPoint');
 
 // CFG: TEMPLATE-BASE-PATH
-$cfg->setConfigEntry('tpl_base_path', "templates/");
+$cfg->setConfigEntry('tpl_base_path', 'templates/');
 
 // CFG: LANGUAGE-BASE-PATH
-$cfg->setConfigEntry('lang_base_path', "inc/language/");
+$cfg->setConfigEntry('lang_base_path', 'inc/language/');
 
 // CFG: COMPRESSOR-BASE-PATH
-$cfg->setConfigEntry('compressor_base_path', "inc/classes/main/compressor/");
+$cfg->setConfigEntry('compressor_base_path', 'inc/classes/main/compressor/');
+
+// CFG: APPLICATION-BASE-PATH
+$cfg->setConfigEntry('application_base_path', 'application/');
 
 // CFG: APPLICATION-PATH
-$cfg->setConfigEntry('application_path', $cfg->readConfig('base_path') . "application/");
+$cfg->setConfigEntry('application_path', $cfg->getConfigEntry('base_path') . $cfg->getConfigEntry('application_base_path'));
 
 // CFG: COMPILE-OUTPUT-PATH
-$cfg->setConfigEntry('compile_output_path', "templates/_compiled/");
+$cfg->setConfigEntry('compile_output_path', 'templates/_compiled/');
+
+// CFG: TEMPLATE-CLASS
+$cfg->setConfigEntry('web_template_class', 'WebTemplateEngine');
 
-// CFG: TEMPLATE-ENGINE
-$cfg->setConfigEntry('template_class', "WebTemplateEngine");
+// CFG: DECO-XML-REWRITER-TEMPLATE-CLASS
+$cfg->setConfigEntry('deco_xml_rewriter_template_class', 'XmlRewriterTemplateDecorator');
 
-// CFG: DEBUG-ENGINE
-$cfg->setConfigEntry('debug_class', "DebugWebOutput");
+// CFG: DEBUG-CLASS
+$cfg->setConfigEntry('debug_class', 'DebugWebOutput');
 
 // CFG: DEFAULT-LANGUAGE
-$cfg->setConfigEntry('default_lang', "de"); // A two-char language string: de for german, en for english and so on
+$cfg->setConfigEntry('default_lang', 'de'); // A two-char language string: de for german, en for english and so on
 
 // CFG: WEB-TEMPLATE-TYPE
-$cfg->setConfigEntry('web_template_type', "html");
+$cfg->setConfigEntry('web_template_type', 'html');
 
 // CFG: EMAIL-TEMPLATE-TYPE
-$cfg->setConfigEntry('email_template_type', "emails");
+$cfg->setConfigEntry('email_template_type', 'emails');
 
 // CFG: CODE-TEMPLATE-TYPE
-$cfg->setConfigEntry('code_template_type', "code");
+$cfg->setConfigEntry('code_template_type', 'code');
+
+// CFG: IMAGE-TEMPLATE-TYPE
+$cfg->setConfigEntry('image_template_type', 'image');
 
-// CFG: WEB-ENGINE
-$cfg->setConfigEntry('web_engine', "WebOutput");
+// CFG: MENU-TEMPLATE-TYPE
+$cfg->setConfigEntry('menu_template_type', 'menu');
+
+// CFG: OUTPUT-CLASS
+$cfg->setConfigEntry('output_class', 'WebOutput');
 
 // CFG: SELECTOR-TEMPLATE-PREFIX
-$cfg->setConfigEntry('tpl_selector_prefix', "selector");
+$cfg->setConfigEntry('tpl_selector_prefix', 'selector');
 
 // CFG: WEB-CONTENT-TYPE
-$cfg->setConfigEntry('web_content_type', "text/html");
+$cfg->setConfigEntry('web_content_type', 'text/html');
 
 // CFG: VALID-TEMPLATE-VARIABLE
-$cfg->setConfigEntry('tpl_valid_var', "content");
+$cfg->setConfigEntry('tpl_valid_var', 'content');
 
 // CFG: META-AUTHOR
-$cfg->setConfigEntry('meta_author', "Roland H&auml;der");
+$cfg->setConfigEntry('meta_author', 'Your-name-here');
 
 // CFG: META-PUBLISHER
-$cfg->setConfigEntry('meta_publisher', "Roland H&auml;der");
+$cfg->setConfigEntry('meta_publisher', 'Your-name-here');
 
 // CFG: META-KEYWORDS
-$cfg->setConfigEntry('meta_keywords', "test,test,test");
+$cfg->setConfigEntry('meta_keywords', 'test,test,test');
 
 // CFG: META-DESCRIPTION
-$cfg->setConfigEntry('meta_description', "A lame description for an application framework");
+$cfg->setConfigEntry('meta_description', 'A description for your website');
 
 // CFG: SELECTOR-MAIN-TEMPLATE
-$cfg->setConfigEntry('selector_main_tpl', "selector_main");
+$cfg->setConfigEntry('selector_main_tpl', 'selector_main');
 
 // CFG: SELECTOR-APPS-TEMPLATE
-$cfg->setConfigEntry('selector_apps_tpl', "selector_apps");
+$cfg->setConfigEntry('selector_apps_tpl', 'selector_apps');
 
 // CFG: SELECTOR-NAME
-$cfg->setConfigEntry('selector_name', "selector");
+$cfg->setConfigEntry('selector_name', 'selector');
 
 // CFG: DEFAULT-APPLICATION
-$cfg->setConfigEntry('default_application', "selector");
+$cfg->setConfigEntry('default_application', 'selector');
 
 // CFG: VERBOSE-LEVEL
 $cfg->setConfigEntry('verbose_level', 0);
 
-// CFG: CACHE-TYPE
-$cfg->setConfigEntry('cache_class', "MemoryCache");
+// CFG: CACHE-CLASS
+$cfg->setConfigEntry('cache_class', 'MemoryCache');
+
+// CFG: SEARCH-CRITERIA-CLASS
+$cfg->setConfigEntry('search_criteria_class', 'SearchCriteria');
 
-// CFG: SEARCH-CRITERIA
-$cfg->setConfigEntry('search_criteria_class', "SearchCriteria");
+// CFG: DATASET-CRITERIA-CLASS
+$cfg->setConfigEntry('dataset_criteria_class', 'DataSetCriteria');
 
-// CFG: DATASET-CRITERIA
-$cfg->setConfigEntry('dataset_criteria_class', "DataSetCriteria");
+// CFG: UPDATE-CRITERIA-CLASS
+$cfg->setConfigEntry('update_criteria_class', 'UpdateCriteria');
 
-// CFG: UPDATE-CRITERIA
-$cfg->setConfigEntry('update_criteria_class', "UpdateCriteria");
+// CFG: FILE-IO-CLASS
+$cfg->setConfigEntry('file_io_class', 'FileIoHandler');
 
-// CFG: FILE-IO-HANDLER
-$cfg->setConfigEntry('file_io_class', "FileIoHandler");
+// CFG: DATABASE-RESULT-CLASS
+$cfg->setConfigEntry('database_result_class', 'DatabaseResult');
 
-// CFG: FILTER-CHAIN
-$cfg->setConfigEntry('filter_chain_class', "FilterChain");
+// CFG: FILTER-CHAIN-CLASS
+$cfg->setConfigEntry('filter_chain_class', 'FilterChain');
 
-// CFG: FILE-INPUT-STREAM
-$cfg->setConfigEntry('file_input_class', "FileIoStream");
+// CFG: FILE-INPUT-CLASS
+$cfg->setConfigEntry('file_input_class', 'FileIoStream');
 
-// CFG: FILE-OUTPUT-STREAM
-$cfg->setConfigEntry('file_output_class', "FileIoStream");
+// CFG: FILE-OUTPUT-CLASS
+$cfg->setConfigEntry('file_output_class', 'FileIoStream');
 
 // CFG: EMAIL-VALIDATOR-FILTER
-$cfg->setConfigEntry('email_validator_filter', "EmailValidatorFilter");
+$cfg->setConfigEntry('email_validator_filter', 'EmailValidatorFilter');
 
 // CFG: USERNAME-VALIDATOR-FILTER
-$cfg->setConfigEntry('username_validator_filter', "UserNameValidatorFilter");
+$cfg->setConfigEntry('username_validator_filter', 'UserNameValidatorFilter');
 
 // CFG: USERNAME-IS-GUEST-FILTER
-$cfg->setConfigEntry('username_is_guest_filter', "UserNameIsGuestFilter");
+$cfg->setConfigEntry('username_is_guest_filter', 'UserNameIsGuestFilter');
 
 // CFG: PASSWORD-VALIDATOR-FILTER
-$cfg->setConfigEntry('password_validator_filter', "PasswordValidatorFilter");
+$cfg->setConfigEntry('password_validator_filter', 'PasswordValidatorFilter');
 
 // CFG: RULES-ACCEPTED-FILTER
-$cfg->setConfigEntry('rules_accepted_filter', "RulesAcceptedFilter");
+$cfg->setConfigEntry('rules_accepted_filter', 'RulesAcceptedFilter');
 
 // CFG: USERNAME-VERIFIER-FILTER
-$cfg->setConfigEntry('username_verifier_filter', "UserNameVerifierFilter");
+$cfg->setConfigEntry('username_verifier_filter', 'UserNameVerifierFilter');
 
 // CFG: USER-GUEST-VERIFIER-FILTER
-$cfg->setConfigEntry('user_guest_verifier_filter', "UserGuestVerifierFilter");
+$cfg->setConfigEntry('user_guest_verifier_filter', 'UserGuestVerifierFilter');
 
 // CFG: EMAIL-VERIFIER-FILTER
-$cfg->setConfigEntry('email_verifier_filter', "EmailVerifierFilter");
+$cfg->setConfigEntry('email_verifier_filter', 'EmailVerifierFilter');
 
 // CFG: PASSWORD-VERIFIER-FILTER
-$cfg->setConfigEntry('password_verifier_filter', "PasswordVerifierFilter");
+$cfg->setConfigEntry('password_verifier_filter', 'PasswordVerifierFilter');
 
 // CFG: PASSWD-GUEST-VERIFIER-FILTER
-$cfg->setConfigEntry('passwd_guest_verifier_filter', "PasswordGuestVerifierFilter");
+$cfg->setConfigEntry('passwd_guest_verifier_filter', 'PasswordGuestVerifierFilter');
 
 // CFG: EMAIL-CHANGE-FILTER
-$cfg->setConfigEntry('email_change_filter', "EmailChangeFilter");
+$cfg->setConfigEntry('email_change_filter', 'EmailChangeFilter');
 
 // CFG: PASSWORD-CHANGE-FILTER
-$cfg->setConfigEntry('password_change_filter', "PasswordChangeFilter");
+$cfg->setConfigEntry('password_change_filter', 'PasswordChangeFilter');
 
 // CFG: ACCOUNT-PASSWORD-FILTER
-$cfg->setConfigEntry('account_password_filter', "AccountPasswordVerifierFilter");
+$cfg->setConfigEntry('account_password_filter', 'AccountPasswordVerifierFilter');
 
 // CFG: USER-STATUS-FILTER
-$cfg->setConfigEntry('user_status_filter', "UserStatusVerifierFilter");
+$cfg->setConfigEntry('user_status_filter', 'UserStatusVerifierFilter');
 
 // CFG: USER-UNCONFIRMED-FILTER
-$cfg->setConfigEntry('user_unconfirmed_filter', "UserUnconfirmedVerifierFilter");
+$cfg->setConfigEntry('user_unconfirmed_filter', 'UserUnconfirmedVerifierFilter');
 
 // CFG: CRYPTO-CLASS
-$cfg->setConfigEntry('crypto_class', "CryptoHelper");
+$cfg->setConfigEntry('crypto_class', 'CryptoHelper');
 
 // CFG: RNG-CLASS
-$cfg->setConfigEntry('rng_class', "RandomNumberGenerator");
+$cfg->setConfigEntry('rng_class', 'RandomNumberGenerator');
 
 // CFG: USER-DB-WRAPPER-CLASS
-$cfg->setConfigEntry('user_db_wrapper_class', "UserDatabaseWrapper");
+$cfg->setConfigEntry('user_db_wrapper_class', 'UserDatabaseWrapper');
 
 // CFG: NEWS-DB-WRAPPER-CLASS
-$cfg->setConfigEntry('news_db_wrapper_class', "NewsDatabaseWrapper");
+$cfg->setConfigEntry('news_db_wrapper_class', 'NewsDatabaseWrapper');
 
 // CFG: WEB-CMD-RESOLVER-CLASS
-$cfg->setConfigEntry('web_cmd_resolver_class', "WebCommandResolver");
+$cfg->setConfigEntry('web_cmd_resolver_class', 'WebCommandResolver');
+
+// CFG: WEB-CMD-LOGIN-RESOLVER-CLASS
+$cfg->setConfigEntry('web_cmd_login_resolver_class', 'WebCommandResolver');
 
 // CFG: IMAGE-CMD-RESOLVER-CLASS
-$cfg->setConfigEntry('image_cmd_resolver_class', "ImageCommandResolver");
+$cfg->setConfigEntry('image_cmd_resolver_class', 'ImageCommandResolver');
+
+// CFG: IMAGE-CMD-CODE-CAPTCHA-RESOLVER-CLASS
+$cfg->setConfigEntry('image_cmd_code_captcha_resolver_class', 'ImageCommandResolver');
 
 // CFG: MAILER-CLASS
-$cfg->setConfigEntry('mailer_class', "DebugMailer");
+$cfg->setConfigEntry('mailer_class', 'DebugMailer');
+
+// CFG: XML-PARSER-CLASS
+$cfg->setConfigEntry('xml_parser_class', 'XmlParser');
+
+// CFG: DECO-COMPACTING-XML-PARSER-CLASS
+$cfg->setConfigEntry('deco_compacting_xml_parser_class', 'XmlCompactorDecorator');
 
 // CFG: MATH-PRIME
 $cfg->setConfigEntry('math_prime', 591623);
 
 // CFG: DATE-KEY
-$cfg->setConfigEntry('date_key', date("d-m-Y (l-F-T)", time()));
+$cfg->setConfigEntry('date_key', date('d-m-Y (l-F-T)', time()));
 
 // CFG: SALT-LENGTH
 $cfg->setConfigEntry('salt_length', 10);
@@ -245,44 +272,89 @@ $cfg->setConfigEntry('salt_length', 10);
 // CFG: RND-STR-LENGTH
 $cfg->setConfigEntry('rnd_str_length', 128);
 
-// CFG: HASH-MASK
-$cfg->setConfigEntry('hash_mask', "%1s:%2s:%3s"); // 1=salt, 2=extra salt, 3=plain password
+// CFG: HASH-EXTRA-MASK
+$cfg->setConfigEntry('hash_extra_mask', "%1s:%2s:%3s"); // 1=salt, 2=extra salt, 3=plain password/string
+
+// CFG: HASH-NORMAL-MASK
+$cfg->setConfigEntry('hash_normal_mask', "%1s:%2s"); // 1=salt, 2=plain password/string
 
 // CFG: IS-SINGLE-SERVER
-$cfg->setConfigEntry('is_single_server', "Y");
+$cfg->setConfigEntry('is_single_server', 'Y');
 
-// CFG: POST-REGISTRATION-ACTION
-$cfg->setConfigEntry('post_registration_class', "LoginAfterRegistrationAction");
+// CFG: POST-REGISTRATION-CLASS
+$cfg->setConfigEntry('post_registration_class', 'LoginAfterRegistrationAction');
 
 // CFG: USER-CLASS
-$cfg->setConfigEntry('user_class', "Member");
+$cfg->setConfigEntry('user_class', 'Member');
 
 // CFG: GUEST-CLASS
-$cfg->setConfigEntry('guest_class', "Guest");
+$cfg->setConfigEntry('guest_class', 'Guest');
 
 // CFG: COOKIE-EXPIRE
 $cfg->setConfigEntry('cookie_expire', (60*60*2)); // Two hours!
 
 // CFG: COOKIE-PATH
-$cfg->setConfigEntry('cookie_path', $cfg->detectScriptPath() . "/");
+$cfg->setConfigEntry('cookie_path', $cfg->detectScriptPath() . '/');
 
 // CFG: COOKIE-DOMAIN
 $cfg->setConfigEntry('cookie_domain', $cfg->detectDomain()); // Is mostly the same...
 
 // CFG: COOKIE-SSL
-$cfg->setConfigEntry('cookie_ssl', (isset($_SERVER['HTTPS'])));
+$cfg->setConfigEntry('cookie_ssl', $cfg->isHttpSecured());
 
 // CFG: CRYPT-FIXED-SALT
-$cfg->setConfigEntry('crypt_fixed_salt', "N");
+$cfg->setConfigEntry('crypt_fixed_salt', 'N');
 
 // CFG: DB-UPDATE-PRIMARY-FORCED
-$cfg->setConfigEntry('db_update_primary_forced', "Y");
+$cfg->setConfigEntry('db_update_primary_forced', 'Y');
 
 // CFG: GERMAN-DATE-TIME
 $cfg->setConfigEntry('german_date_time', "%3\$s.%2\$s.%1\$s, %4\$s:%5\$s:%6\$s");
 
 // CFG: PRODUCT-INSTALL-MODE
-$cfg->setConfigEntry('product_install_mode', "debug");
+$cfg->setConfigEntry('product_install_mode', 'debug');
+
+// CFG: DECIMALS
+$cfg->setConfigEntry('decimals', 3);
+
+// CFG: MENU-STACKER-CLASS
+$cfg->setConfigEntry('menu_stacker_class', 'FiLoStacker');
+
+// CFG: STACKER-GENERIC-MAX-SIZE
+$cfg->setConfigEntry('stacker_generic_max_size', 100);
+
+// CFG: STACKER-CURRENT-NODE-MAX-SIZE
+$cfg->setConfigEntry('stacker_current_node_max_size', 20);
+
+// CFG: LOCAL-FILE-DATABASE-CLASS
+$cfg->setConfigEntry('local_file_database_class', 'LocalFileDatabase');
+
+// CFG: COMPRESSOR-CHANNEL-CLASS
+$cfg->setConfigEntry('compressor_channel_class', 'CompressorChannel');
+
+// CFG: DEBUG-OUTPUT-TIMINGS
+$cfg->setConfigEntry('debug_output_timings', 'N');
+
+// CFG: PROXY-HOST
+$cfg->setConfigEntry('proxy_host', '');
+
+// CFG: PROXY-PORT
+$cfg->setConfigEntry('proxy_port', '');
+
+// CFG: PROXY-USERNAME
+$cfg->setConfigEntry('proxy_username', '');
+
+// CFG: PROXY-PASSWORD
+$cfg->setConfigEntry('proxy_password', '');
+
+// CFG: PROXY-CONNECT-METHOD
+$cfg->setConfigEntry('proxy_connect_method', 'Y');
+
+// CFG: HOSTNAME-FILE
+$cfg->setConfigEntry('hostname_file', '/etc/hostname');
+
+// CFG: DATABASE-CACHE-ENABLED
+$cfg->setConfigEntry('database_cache_enabled', FALSE);
 
 // [EOF]
 ?>