From 4766e9e10c141a75a14a1440dc63eb1d8a5ada8c Mon Sep 17 00:00:00 2001
From: pedro_morgan <pedro_morgan@ispconfig3>
Date: Sun, 19 Aug 2007 00:59:09 -0400
Subject: [PATCH] * Introducing the sb_local.php.skel file to keep a local configuration

---
 interface/lib/config.inc.php |  241 ++++++++++++++++++++++++++++-------------------
 1 files changed, 143 insertions(+), 98 deletions(-)

diff --git a/interface/lib/config.inc.php b/interface/lib/config.inc.php
index 11726c2..f2b334f 100644
--- a/interface/lib/config.inc.php
+++ b/interface/lib/config.inc.php
@@ -1,99 +1,144 @@
-<?php
-/*
-Copyright (c) 2005, Till Brehm, projektfarm Gmbh
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright notice,
-      this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright notice,
-      this list of conditions and the following disclaimer in the documentation
-      and/or other materials provided with the distribution.
-    * Neither the name of ISPConfig nor the names of its contributors
-      may be used to endorse or promote products derived from this software without
-      specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-ini_set('register_globals',0);
-
-$conf["app_title"] = "MyDNSConfig";
-$conf["app_version"] = "1.0.0";
-
-$conf["rootpath"]                 = "F:\\server\\www\\ispconfig3\\interface";
-//$conf["rootpath"]                 = "D:\\www\\ispconfig3\\interface";
-//$conf["rootpath"]                 = "/home/www/ispconfig3/web/cms";
-
-$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";
-
-
-/*
-        Database Settings
-*/
-
-
-$conf["db_type"]                 = 'mysql';
-$conf["db_host"]                 = 'localhost';
-$conf["db_database"]         = 'ispconfig3';
-$conf["db_user"]                 = 'root';
-$conf["db_password"]         = '';
-
-
-/*
-        External programs
-*/
-
-//$conf["programs"]["convert"]                = "/usr/bin/convert";
-$conf["programs"]["wput"]                        = $conf["rootpath"]."\\tools\\wput\\wput.exe";
-
-
-/*
-        Themes
-*/
-
-$conf["theme"]                                         = 'default';
-$conf["html_content_encoding"]        = 'text/html; charset=iso-8859-1';
-$conf["logo"] = 'themes/default/images/mydnsconfig_logo.gif';
-
-/*
-        Default Language
-*/
-
-$conf["language"]                = 'en';
-
-
-/*
-        Auto Load Modules
-*/
-
-$conf["start_db"]                 = true;
-$conf["start_session"]         = true;
-
-/*
-        DNS Settings
-*/
-
-$conf["auto_create_ptr"] = 1; // Automatically create PTR records?
-$conf["default_ns"] = 'ns1.example.com.'; // must be set if $conf['auto_create_ptr'] is 1. Don't forget the trailing dot!
-$conf["default_mbox"] = 'admin.example.com.'; // Admin email address. Must be set if $conf['auto_create_ptr'] is 1. Replace "@" with ".". Don't forget the trailing dot!
-$conf["default_ttl"] = 86400;
-$conf["default_refresh"] = 28800;
-$conf["default_retry"] = 7200;
-$conf["default_expire"] = 604800;
-$conf["default_minimum_ttl"] = 86400;
-
+<?php
+/*
+Copyright (c) 2007, Till Brehm, Falko Timme, projektfarm Gmbh
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+error_reporting(E_ALL|E_STRICT);
+
+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
+$conf['app_title'] = 'ISPConfig';
+$conf['app_version'] = '3.0.0';
+$conf['modules_available'] 	= 'admin,mail,sites,monitor,client,dns';
+
+
+//** Future Code  - pedro - rfc
+/* Database connection
+	The only time paramaters are needed is to connect, otherwise its not needed  
+	variables "around" the application. ie Connected and done.
+	Prefered is an array as $DB in capitals, ie
+	$DB['host'] = '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.
+	
+	$DB['type']			= 'mysql';
+	$DB['host']			= 'localhost';
+	$DB['database']		= 'ispconfig3';
+	$DB['user']			= 'root';
+	$DB['password']		= '';
+*/
+
+//** Detect for local database setting or set and load default params
+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';
+}
+
+
+//** 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';
+// 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 */
+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";
+$conf['programs']['wput']		= $conf['rootpath']."\\tools\\wput\\wput.exe";
+
+
+//** Themes
+$conf['theme']					= 'default';
+$conf['html_content_encoding']	= 'text/html; charset=iso-8859-1';
+$conf['logo'] 					= 'themes/default/images/mydnsconfig_logo.gif';
+
+//** Default Language
+$conf['language']       = 'en';
+
+//**  Auto Load Modules
+$conf['start_db']		= true;
+$conf['start_session']	= true;
+
+
+//** DNS Settings
+
+//* Automatically create PTR records?
+$conf['auto_create_ptr'] 	 = 1; 
+//* must be set if $conf['auto_create_ptr'] is 1. Don't forget the trailing dot!
+$conf['default_ns'] 		 = 'ns1.example.com.'; 
+//* Admin email address. Must be set if $conf['auto_create_ptr'] is 1. Replace "@" with ".". Don't forget the trailing dot!
+$conf['default_mbox'] 		 = 'admin.example.com.'; 
+$conf['default_ttl'] 		 = 86400;
+$conf['default_refresh'] 	 = 28800;
+$conf['default_retry'] 		 = 7200;
+$conf['default_expire'] 	 = 604800;
+$conf['default_minimum_ttl'] = 86400;
+
 ?>
\ No newline at end of file

--
Gitblit v1.9.1