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