00001 <?php
00002
00003
00004
00005 if (!defined('APP_LANG')) define ('APP_LANG', 'en');
00006 if (!defined('APP_CHARSET')) define('APP_CHARSET', 'UTF-8');
00007
00008 if (!defined('APP_DB_HOST')) {
00009 define('APP_DB_HOST', '127.0.0.1');
00010 }
00011 if (!defined('APP_DB_TYPE')) {
00012 define('APP_DB_TYPE', 'mysql');
00013 }
00014
00015
00016
00017
00018 Config::set_value_from_constant(Config::TITLE, 'APP_TITLE', '');
00019 Config::set_value_from_constant(Config::ITEMS_PER_PAGE, 'APP_ITEMS_PER_PAGE', 10);
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 Config::set_value_from_constant(Config::VERSION_MAX, 'APP_VERSION_MAX', 10.0);
00031
00032
00033
00034 if (!defined('APP_TESTMODE')) define('APP_TESTMODE', false);
00035 Config::set_feature(Config::TESTMODE, APP_TESTMODE);
00036 Config::set_feature_from_constant(Config::THROW_ON_DB_ERROR, 'APP_THROW_ON_DB_ERROR', true);
00037 Config::set_feature_from_constant(Config::THROW_ON_WARNING, 'APP_THROW_ON_WARNING', !APP_TESTMODE);
00038 Config::set_feature_from_constant(Config::DEBUG_QUERIES, 'APP_DEBUG_QUERIES', APP_TESTMODE);
00039 Config::set_feature_from_constant(Config::PRINT_DURATION, 'APP_PRINT_DURATION', APP_TESTMODE);
00040 Config::set_feature_from_constant(Config::DISABLE_CACHE, 'APP_DISABLE_CACHE', APP_TESTMODE);
00041 Config::set_feature_from_constant(Config::FORCE_FULL_DOMAINNAME, 'APP_FORCE_FULL_DOMAINNAME', true);
00042 Config::set_feature_from_constant(Config::VALIDATE_URL, 'APP_VALIDATE_URL', true);
00043
00044
00045
00046 Config::set_feature_from_constant(Config::ENABLE_HTTPS, 'APP_ENABLE_HTTPS', true);
00047 Config::set_value_from_constant(Config::DEFAULT_SCHEME, 'APP_DEFAULT_SCHEME', 'http');
00048 Config::set_feature_from_constant(Config::START_SESSION, 'APP_START_SESSION', true);
00049 Config::set_value_from_constant(Config::SESSION_HANDLER, 'APP_SESSION_HANDLER', 'DBSession');
00050
00051
00052
00053 Config::set_value_from_constant(Config::DEFAULT_TEMPLATE_ENGINE, 'APP_DEFAULT_TEMPLATE_ENGINE', 'core');
00054 Config::set_value_from_constant(Config::PAGE_TEMPLATE, 'APP_PAGE_TEMPLATE', 'core::page');
00055
00056
00057
00058 Config::set_feature_from_constant(Config::LOG_QUERIES, 'APP_LOG_QUERIES', APP_TESTMODE);
00059 Config::set_feature_from_constant(Config::LOG_FAILED_QUERIES, 'APP_LOG_FAILED_QUERIES', true);
00060 Config::set_feature_from_constant(Config::LOG_SLOW_QUERIES, 'APP_LOG_SLOW_QUERIES', APP_TESTMODE);
00061 Config::set_feature_from_constant(Config::LOG_TRANSLATIONS, 'APP_LOG_TRANSLATIONS', APP_TESTMODE);
00062 Config::set_feature_from_constant(Config::LOG_HTML_ERROR_STATUS, 'APP_LOG_HTML_ERROR_STATUS', APP_TESTMODE);
00063 Config::set_feature_from_constant(Config::LOG_HTTPREQUESTS, 'APP_LOG_HTTPREQUESTS', APP_TESTMODE);
00064
00065
00066
00067 Config::set_value_from_constant(Config::MAIL_SUBJECT, 'APP_MAIL_SUBJECT', '[' . Config::get_value(Config::TITLE). ']');
00068
00069
00070
00071 Config::set_value(Config::MAIL_SENDER, APP_MAIL_SENDER);
00072
00073
00074
00075 Config::set_value(Config::MAIL_ADMIN, APP_MAIL_ADMIN);
00076
00077
00078
00079 Config::set_value(Config::MAIL_SUPPORT, APP_MAIL_SUPPORT);
00080
00081
00082
00083
00084 Config::set_value_from_constant(Config::MAILER_TYPE, 'APP_MAILER_TYPE', 'mail');
00085
00086
00087
00088 Config::set_value_from_constant(Config::MAILER_SMTP_HOST, 'APP_MAILER_SMTP_HOST', '');
00089
00090
00091
00092 Config::set_value_from_constant(Config::MAILER_SMTP_USER, 'APP_MAILER_SMTP_USER', '');
00093
00094
00095
00096 Config::set_value_from_constant(Config::MAILER_SMTP_PASSWORD, 'APP_MAILER_SMTP_PASSWORD', '');
00097
00098
00099
00100 Config::set_value_from_constant(Config::TEMP_DIR, 'APP_TEMP_DIR', APP_INCLUDE_ABSPATH . '../tmp/');
00101
00102
00103
00104 Config::set_value_from_constant(Config::OUT_DIR, 'APP_OUT_DIR', Config::get_value(Config::TEMP_DIR));
00105
00106
00107
00108 if (defined('APP_3RDPARTY_DIR')) {
00109 set_include_path(get_include_path() . PATH_SEPARATOR . APP_3RDPARTY_DIR);
00110 Config::set_value(Config::THIRDPARTY_DIR, APP_3RDPARTY_DIR);
00111 }
00112
00113
00114
00115 Config::set_value_from_constant(Config::FORMVALIDATION_FIELD_NAME, 'APP_FORMVALIDATION_FIELD_NAME', 'jfioeudkswefs');
00116 Config::set_value_from_constant(Config::FORMVALIDATION_HANDLER_NAME, 'APP_FORMVALIDATION_HANDLER_NAME', 'uerwudjmdjwu');
00117 Config::set_value_from_constant(Config::FORMVALIDATION_EXPIRATION_TIME, 'APP_FORMVALIDATION_EXPIRATION_TIME', 15);
00118
00119
00120
00121 Config::set_feature(
00122 Config::GZIP_SUPPORT,
00123 isset($_SERVER['HTTP_ACCEPT_ENCODING']) && strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'deflate') && !APP_TESTMODE
00124 );
00125
00126
00127
00128 Config::set_value(Config::URL_DOMAIN, APP_URL_DOMAIN);
00129 Config::set_value_from_constant(Config::URL_BASEDIR, 'APP_URL_BASEDIR', '/');
00130 Config::set_value_from_constant(Config::URL_SERVER, 'APP_URL_SERVER', '%scheme%://%domain%');
00131 Config::set_value_from_constant(Config::URL_BASEURL, 'APP_URL_BASEURL', '%scheme%://%domain%%basedir%');
00132 if (Config::has_feature(Config::ENABLE_HTTPS)) {
00133 Config::set_value_from_constant(Config::URL_SERVER_SAFE, 'APP_URL_SERVER_SAFE', 'https://%domain%');
00134 Config::set_value_from_constant(Config::URL_BASEURL_SAFE, 'APP_URL_BASEURL', 'https://%domain%%basedir%');
00135 }
00136 else {
00137 Config::set_value_from_constant(Config::URL_SERVER_SAFE, 'APP_URL_SERVER_SAFE', '%scheme%://%domain%');
00138 Config::set_value_from_constant(Config::URL_BASEURL_SAFE, 'APP_URL_BASEURL', '%scheme%://%domain%%basedir%');
00139 }
00140 Config::set_value_from_constant(Config::URL_ABSPATH, 'APP_URL_ABSPATH', APP_INCLUDE_ABSPATH . 'www/');
00141
00142
00143
00144 Config::set_value_from_constant(Config::URL_IMAGES_DIR, 'APP_URL_IMAGES_DIR', 'images/');
00145 Config::set_value_from_constant(Config::URL_IMAGES, 'APP_URL_IMAGES', '%basedir%' . Config::get_value(Config::URL_IMAGES_DIR));
00146
00147
00148
00149 Config::set_value_from_constant(Config::URL_DEFAULT_PAGE, 'APP_DEFAULT_PAGE', '%scheme%://%domain%%basedir%');
00150
00151
00152
00153
00154 Config::set_value_from_constant(Config::QUERY_PARAM_PATH_INVOKED, 'APP_QUERY_PARAM_PATH_INVOKED', 'path');
00155
00156
00157
00158
00159 Config::set_value_from_constant(Config::DB_SLOW_QUERY_THRESHOLD, 'APP_DB_SLOW_QUERY_THRESHOLD', 0.0100);
00160
00161
00162
00163
00164 Config::set_value_from_constant(Config::CACHEHEADER_CLASS_CACHED, 'APP_CACHEHEADER_CLASS_CACHED', 'PrivateRigid');
00165 Config::set_value_from_constant(Config::CACHEHEADER_CLASS_UNCACHED, 'APP_CACHEHEADER_CLASS_UNCACHED', 'NoCache');