From dcff5718f345f55f7ea81f18d1f086facde4eacf Mon Sep 17 00:00:00 2001
From: pedro_morgan <pedro_morgan@ispconfig3>
Date: Mon, 20 Aug 2007 23:14:51 -0400
Subject: [PATCH] * Using new ISPC_*_PATH constants * Adding new data schema (to be moved shortly * no more $conf['classpath']

---
 interface/lib/config.inc.php |  100 ++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 77 insertions(+), 23 deletions(-)

diff --git a/interface/lib/config.inc.php b/interface/lib/config.inc.php
index 2c01529..e5d155a 100644
--- a/interface/lib/config.inc.php
+++ b/interface/lib/config.inc.php
@@ -27,47 +27,101 @@
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
-Header('Pragma: no-cache');
-Header('Cache-Control: no-store, no-cache, max-age=0, must-revalidate');
-Header('Content-Type: text/html');
+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');
+//* TODO: Js caching - pedro
 
 //** Key paramaters
+define('ISPC_APP_TITLE', 'ISPConfig');
 $conf['app_title'] = 'ISPConfig';
+define('ISPC_APP_VERSION', '3.0.0');
 $conf['app_version'] = '3.0.0';
 $conf['modules_available'] 	= 'admin,mail,sites,monitor,client,dns';
 
 
+//********************************************************************************
+//** 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['engine'] = 'type'; 
+	$DB['host'] = 'ip';
+	$DB['user'] = 'me';
+	$DB['password'] = 'secret';
+	$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 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 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.
+*/
+
+//* 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_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_user']			= 'root';
+	$conf['db_password']		= '';
+    $conf['db_database']        = 'ispconfig3';
+}
+
+
+//** The main ROOT is the parent directory to this file, ie Interface/. NO trailing slashes.
+define('ISPC_ROOT_PATH',  realpath(dirname(__FILE__).'/../'));
+define('ISPC_LIB_PATH',   ISPC_ROOT_PATH.'/lib');
+define('ISPC_CLASS_PATH', ISPC_ROOT_PATH.'/lib/classes');
+define('ISPC_TEMP_PATH',  ISPC_ROOT_PATH.'/temp');
+define('ISPC_CACHE_PATH', ISPC_ROOT_PATH.'/cache');
+
+
 //** Database Settings
-$conf['db_type']			= 'mysql';
-$conf['db_host']			= 'localhost';
-$conf['db_database']		= 'ispconfig3';
-$conf['db_user']			= 'root';
-$conf['db_password']		= '';
+/* 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['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';
 
 
-//** Path Settings (Do not change!)
-$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';
-
-
-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, can leak everywhere 
+   Don think this lot is being used so commented out
 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";
 
 
@@ -77,7 +131,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