From 66b4f903ee89aff755b2fd434cd0322223df4e71 Mon Sep 17 00:00:00 2001
From: pedro_morgan <pedro_morgan@ispconfig3>
Date: Sun, 19 Aug 2007 21:53:10 -0400
Subject: [PATCH] Made log file a constant, replaced with __FILE__
---
interface/lib/config.inc.php | 79 ++++++++++++++++++++++++---------------
1 files changed, 49 insertions(+), 30 deletions(-)
diff --git a/interface/lib/config.inc.php b/interface/lib/config.inc.php
index 2012b7d..efe42f9 100644
--- a/interface/lib/config.inc.php
+++ b/interface/lib/config.inc.php
@@ -27,6 +27,8 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+error_reporting(E_ALL|E_NOTICE);
+
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, max-age=0, must-revalidate');
header('Content-Type: text/html');
@@ -38,79 +40,96 @@
$conf['modules_available'] = 'admin,mail,sites,monitor,client,dns';
-//** Future Code - pedro comments
-/* Database connection
- The only time its needed is to connectm otherwise it not needed as
- variables aronf the application. Connected and done.
+//********************************************************************************
+//** Future Code idea - pedro - rfc
+//** >>>>
+/* Database connection
+ The only time paramaters are needed is to connect, otherwise the variables
+ are not required "around" the application. ie Connected and done.
Prefered is an array as $DB in capitals, ie
- $DB['host'] = 'type';
+ $DB['engine'] = 'type';
$DB['host'] = 'ip';
$DB['user'] = 'me';
$DB['password'] = 'secret';
- $DB['database'] = 'persistent_data_stash';
+ $DB['database'] = 'db_name';
The connection paramaters are all contained within one array structure
With this array structure the connection can be passed around, to functions
- However it can also leak. and be destroyed eg
- $db->connect($DB);
+ However it can also leak so it can be destroyed eg
+ $dbClass->connect($DB);
unset($DB); // only the paranoid survive
Also there is a scenario where we are devloping and using this file
- and the database paramaters might leak.
+ and the database paramaters might leak into svn etc.
+ (This idea is borrowed from the tikiwiki.org project)
To resolve this there is a file called db_local.php.skel which is not detected
- rename this to db_local.php and edit the paramaters
-
- $DB['type'] = 'mysql';
- $DB['host'] = 'localhost';
- $DB['database'] = 'ispconfig3';
- $DB['user'] = 'root';
- $DB['password'] = '';
-
-
+ rename this to db_local.php and edit the paramaters.
*/
-//** Detect for local database setting or set and load default params
-if( file_exists('db_local.php') ){
- require_once('db_local.php');
+//* Detect the local database settings ie $DB array()
+//* Copy db_local.php.skel for and change for local development
+if(file_exists(dirname(__FILE__).'/db_local.php')){
+ require_once(dirname(__FILE__).'/db_local.php');
$conf['db_type'] = $DB['type'];
$conf['db_host'] = $DB['host'];
- $conf['db_database'] = $DB['database'];
$conf['db_user'] = $DB['user'];
$conf['db_password'] = $DB['password'];
+ $conf['db_database'] = $DB['database'];
}else{
//** Database Settings
$conf['db_type'] = 'mysql';
$conf['db_host'] = 'localhost';
- $conf['db_database'] = 'ispconfig3';
$conf['db_user'] = 'root';
$conf['db_password'] = '';
+ $conf['db_database'] = 'ispconfig3';
}
+/* Dynamic constants are another technique as well as key files as constants.
+ The base root directory is the interface/ directory which is the top level for php
+ From this eveything else is be defined underneath as constants
+ The constants are directory paths with no trailing /
+ This should do away with the $conf['rootpath'] etc
+ The $conf['fs_div'] is unnecessary if only / is used, will work on windoze also
+
+*/
+//** The main ROOT is the parent directory to this file, ie interface
+define('ISPC_ROOT', realpath('../'));
+define('ISPC_CLASS_PATH', ISPC_ROOT.'/lib/classes');
+define('ISPC_TEMP_PATH', ISPC_ROOT.'/temp');
+define('ISPC_CACHE_PATH', ISPC_ROOT.'/cache');
+//<< End pedro rfc block
-//** Path Settings (Do not change!)
+//** Database Settings
+/* See above
+$conf['db_type'] = 'mysql';
+$conf['db_host'] = 'localhost';
+$conf['db_user'] = 'root';
+$conf['db_password'] = '';
+$conf['db_database'] = 'ispconfig3';
+*/
+
$conf['rootpath'] = substr(dirname(__FILE__),0,-4);
$conf['fs_div'] = '/'; // File system divider, \\ on windows and / on linux and unix
$conf['classpath'] = $conf['rootpath'].$conf['fs_div'].'lib'.$conf['fs_div'].'classes';
$conf['temppath'] = $conf['rootpath'].$conf['fs_div'].'temp';
-
+// predro notes: not sure this is the right thing ?
+$conf['cache_dir'] = $conf['rootpath'].$conf['fs_div'].'/cache';
define('DIR_TRENNER', $conf['fs_div']);
define('SERVER_ROOT', $conf['rootpath']);
define('INCLUDE_ROOT', SERVER_ROOT.DIR_TRENNER.'lib');
define('CLASSES_ROOT', INCLUDE_ROOT.DIR_TRENNER.'classes');
-/* pedro notes ? this stuff is REALLY not necessay */
-/*
+/* pedro notes ? this stuff is REALLY not necessay, can leak everywhere */
define('DB_TYPE', $conf['db_type']);
define('DB_HOST', $conf['db_host']);
define('DB_DATABASE',$conf['db_database']);
define('DB_USER', $conf['db_user']);
define('DB_PASSWORD', $conf['db_password']);
-*/
+
//** External programs
//$conf["programs"]["convert"] = "/usr/bin/convert";
-// ?? WTF ?? pedro
$conf['programs']['wput'] = $conf['rootpath']."\\tools\\wput\\wput.exe";
@@ -120,7 +139,7 @@
$conf['logo'] = 'themes/default/images/mydnsconfig_logo.gif';
//** Default Language
-$conf["language"] = 'en';
+$conf['language'] = 'en';
//** Auto Load Modules
$conf['start_db'] = true;
--
Gitblit v1.9.1